@import java.util.ArrayList @import java.util.List @import java.util.Map @import java.util.HashMap @args(List strings) @with (String s = strings.get(0), String s2=strings.get(1), String lower=strings.get(2).toLowerCase()) { @s @s2 @lower } @with (String s = strings.get(0), Long value=new Long(100)) { @s @value multiple } @with (String s = strings.get(0), Long value=new Long(100)) { @s @value @with (String v = s.toLowerCase(), List subs = strings.subList(1,2), List anotherSubs=strings.subList(0,1).subList(0,1), String t = "hello, world", Boolean region="".regionMatches(true, 0, ",e,,\n,",5,3), String escapeSelf=",,,") { // Nested @v @subs.toString() @anotherSubs @t @region @escapeSelf @s @value } } @with (String s=strings.get(0)) { @s } @with? (String s=strings.get(0)) { @s } else { else is allowed with nullsafe. } @with (String s=strings.get(0), Map>> value = new HashMap>>(), List list = new ArrayList(5)) { @s @value }