Top Description Interfaces Classes
[default module]

Package org.codehaus.groovy.ast.expr


AST nodes for Groovy expressions

Interface Summary

Modifier and TypeInterface and Description
public interface
ExpressionTransformer

Provides a way to transform expressions

public interface
MethodCall

Interface defining common methods for method calls.

Class Summary

Modifier and TypeClass and Description
public class
AnnotationConstantExpression

Represents an annotation "constant" that may appear in annotation attributes (mainly used as a marker).

public class
ArgumentListExpression

Represents one or more arguments being passed into a method

public class
ArrayExpression

Represents an array object construction.

public class
AttributeExpression

Represents an attribute access (accessing the field of a class) such as the expression "foo.@bar".

public class
BinaryExpression

Represents two expressions and an operation

public class
public class
BooleanExpression

Represents a boolean expression

public class
CastExpression

Represents a typecast expression.

public class
ClassExpression

Represents access to a Java/Groovy class in an expression, such as when invoking a static method or accessing a static type

public class
ClosureExpression

Represents a closure expression such as

{ statement }
public class
ClosureListExpression

This class represents a list of expressions used to create closures.

public class
ConstantExpression

Represents a constant expression such as null, true, false.

public class
ConstructorCallExpression

A constructor call.

public class
DeclarationExpression

Represents one or more local variables.

public class
ElvisOperatorExpression

Represents a short ternary expression x ?: y, which is equal to

def truePart = x
def booleanPart = truePart as boolean
booleanPart?
public class
EmptyExpression

Placeholder for an empty expression.

public abstract class
Expression

Represents a base class for expressions which evaluate as an object

public class
FieldExpression

Represents a field access such as the expression "this.foo".

public class
GStringExpression

Represents a String expression which contains embedded values inside it such as "hello there ${user} how are you" which is expanded lazily

public class
LambdaExpression

Represents a lambda expression such as one of these:

e -> e * 2
(x, y) -> x + y
(x, y) -> { x + y }
(int x, int y) -> { x + y }

public class
ListExpression

Represents a list expression [1, 2, 3] which creates a mutable List

public class
MapEntryExpression

Represents an entry inside a map expression such as 1 : 2.

public class
MapExpression

Represents a map expression [1 : 2, "a" : "b", x : y] which creates a mutable Map

public class
MethodCallExpression

A method call on an object or class.

public class
MethodPointerExpression

Represents a method pointer on an object such as foo.

public class
MethodReferenceExpression

Represents a method reference or a constructor reference, e.g. System.out::println OR Objects::requireNonNull OR Integer::new OR int[]::new

public class
NamedArgumentListExpression

Represents one or more arguments being passed into a method by name

public class
public class
PostfixExpression

Represents a postfix expression like foo++ or bar++

public class
PrefixExpression

Represents a prefix expression like ++foo or --bar

public class
PropertyExpression

Represents a property access such as the expression "foo.bar".

public class
RangeExpression

Represents a range expression such as for iterating.

public class
SpreadExpression

Represents a spread expression *x in the list expression [1, *x, 2].

public class
SpreadMapExpression

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).

public class
StaticMethodCallExpression

A static method call on a class

public class
TernaryExpression

Represents a ternary expression (booleanExpression) ?

public class
public class
public class
public class
VariableExpression

Represents a local variable name, the simplest form of expression.