Package org.codehaus.groovy.ast.expr
package org.codehaus.groovy.ast.expr
AST nodes for Groovy expressions
-
ClassDescriptionRepresents an annotation "constant" that may appear in annotation attributes (mainly used as a marker).Represents one or more arguments being passed into a methodRepresents an array object construction.Represents an attribute access (accessing the field of a class) such as the expression "foo.@bar".Represents two expressions and an operationRepresents a boolean expressionRepresents a typecast expression.Represents access to a Java/Groovy class in an expression, such as when invoking a static method or accessing a static typeRepresents a closure expression such asThis class represents a list of expressions used to create closures.Represents a constant expression such as null, true, false.A constructor call.Represents one or more local variables.Represents a short ternary expression x ?: y, which is equal toPlaceholder for an empty expression.Represents a base class for expressions which evaluate as an objectProvides a way to transform expressionsRepresents a field access such as the expression "this.foo".Represents a String expression which contains embedded values inside it such as "hello there ${user} how are you" which is expanded lazilyRepresents a lambda expression such as one of these:Represents a list expression [1, 2, 3] which creates a mutable ListRepresents an entry inside a map expression such as
1 : 2
or'foo' : 'bar'
.Represents a map expression [1 : 2, "a" : "b", x : y] which creates a mutable MapInterface defining common methods for method calls.A method call on an object or class.Represents a method pointer on an object such asfoo.&bar
which means find the method pointer for thebar
method on thefoo
instance.Represents a method reference or a constructor reference, e.g.Represents one or more arguments being passed into a method by nameRepresents a postfix expression like foo++ or bar++Represents a prefix expression like ++foo or --barRepresents a property access such as the expression "foo.bar".Represents a range expression such as for iterating.Represents a spread expression *x in the list expression [1, *x, 2].Represents a spread map expression *:m in the map expression [1, *:m, 2, "c":100] or in the method invoke expression func(1, *:m, 2, "c":100).A static method call on a classRepresents a ternary expression (booleanExpression) ? expression : expressionRepresents a local variable name, the simplest form of expression.