Loading

Statements

Painless supports all of Java’s control flow statements except the switch statement.

if (doc[item].size() == 0) { // do something if "item" is missing } else if (doc[item].value == 'something') { // do something if "item" value is: something } else { // do something else } 

Painless also supports the for in syntax:

for (def item : list) { // do something } 
for (item in list) { // do something } 
while (ctx._source.item < condition) { // do something } 
do { // do something } while (ctx._source.item < condition)