CompilationUnitNode(1,1..21,6) PreambleNode(1,1..6,1) PreambleBreak[1,1](---\n) GroovyCode[2,1](import some.Thing // a comment...World!') PreambleBreak[4,31](\n---\n) BodyNode(6,1..21,1) JStringBodyTextNode(6,1..7,1) RawText[6,1](\n) TypedComponentNode(7,1..20,8) ComponentArgsNode(7,2..7,6) StringComponentTypeNode(7,2..7,6) StringIdentifier[7,2](html) BodyNode(7,7..20,1) TypedComponentNode(8,5..8,18) ComponentArgsNode(8,6..8,10) StringComponentTypeNode(8,6..8,10) StringIdentifier[8,6](head) TypedComponentNode(9,5..19,12) ComponentArgsNode(9,6..9,10) StringComponentTypeNode(9,6..9,10) StringIdentifier[9,6](body) BodyNode(9,11..19,5) TypedComponentNode(10,9..10,29) ComponentArgsNode(10,10..10,12) StringComponentTypeNode(10,10..10,12) StringIdentifier[10,10](h1) BodyNode(10,13..10,24) GStringBodyTextNode(10,13..10,24) DollarScriptletNode(10,13..10,24) DollarScriptletOpen[10,13](${) GroovyCode[10,15](greeting) DollarScriptletClose[10,23](}) TypedComponentNode(11,9..18,34) ComponentArgsNode(11,10..11,32) ClassComponentTypeNode(11,10..11,32) TypedIdentifier[11,10](groowt.view.web.Select) BodyNode(11,33..18,9) TypedComponentNode(12,13..14,20) ComponentArgsNode(12,14..12,36) ClassComponentTypeNode(12,14..12,18) TypedIdentifier[12,14](Case) KeyValueAttrNode(12,19..12,36) KeyNode(12,19..12,24) AttributeIdentifier[12,19](cond) Equals[12,23](=) ClosureValueNode(12,24..12,36) ClosureAttrValueStart[12,24]({) GroovyCode[12,25](isItTrue()) ClosureAttrValueEnd[12,35](}) BodyNode(12,37..14,13) TypedComponentNode(13,17..13,37) ComponentArgsNode(13,18..13,19) StringComponentTypeNode(13,18..13,19) StringIdentifier[13,18](p) BodyNode(13,20..13,33) JStringBodyTextNode(13,20..13,33) RawText[13,20](It's true! :)) TypedComponentNode(15,13..17,23) ComponentArgsNode(15,14..15,21) ClassComponentTypeNode(15,14..15,21) TypedIdentifier[15,14](Default) BodyNode(15,22..17,13) TypedComponentNode(16,17..16,40) ComponentArgsNode(16,18..16,19) StringComponentTypeNode(16,18..16,19) StringIdentifier[16,18](p) BodyNode(16,20..16,36) JStringBodyTextNode(16,20..16,36) RawText[16,20](It's false... :()