Package org.codehaus.groovy.ast.expr
Class Expression
- java.lang.Object
-
- org.codehaus.groovy.ast.ASTNode
-
- org.codehaus.groovy.ast.AnnotatedNode
-
- org.codehaus.groovy.ast.expr.Expression
-
- All Implemented Interfaces:
GroovydocHolder<AnnotatedNode>,NodeMetaDataHandler
- Direct Known Subclasses:
ArrayExpression,BinaryExpression,BitwiseNegationExpression,BooleanExpression,BytecodeExpression,CastExpression,ClassExpression,ClosureExpression,ConstantExpression,ConstructorCallExpression,EmptyExpression,FieldExpression,GStringExpression,ListExpression,ListOfExpressionsExpression,MapEntryExpression,MapExpression,MethodCallExpression,MethodPointerExpression,PostfixExpression,PrefixExpression,PropertyExpression,RangeExpression,SpreadExpression,SpreadMapExpression,StaticMethodCallExpression,TemporaryVariableExpression,TernaryExpression,TupleExpression,UnaryMinusExpression,UnaryPlusExpression,VariableExpression
public abstract class Expression extends AnnotatedNode
Represents a base class for expressions which evaluate as an object
-
-
Field Summary
Fields Modifier and Type Field Description static Expression[]EMPTY_ARRAY-
Fields inherited from interface groovy.lang.groovydoc.GroovydocHolder
DOC_COMMENT
-
-
Constructor Summary
Constructors Constructor Description Expression()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description ClassNodegetType()voidsetType(ClassNode t)abstract ExpressiontransformExpression(ExpressionTransformer transformer)Return a copy of the expression calling the transformer on any nested expressionsprotected List<Expression>transformExpressions(List<? extends Expression> expressions, ExpressionTransformer transformer)Transforms the list of expressionsprotected <T extends Expression>
List<T>transformExpressions(List<? extends Expression> expressions, ExpressionTransformer transformer, Class<T> transformedType)Transforms the list of expressions, and checks that all transformed expressions have the given type.-
Methods inherited from class org.codehaus.groovy.ast.AnnotatedNode
addAnnotation, addAnnotations, getAnnotations, getAnnotations, getDeclaringClass, getGroovydoc, getInstance, hasNoRealSourcePosition, isSynthetic, setDeclaringClass, setHasNoRealSourcePosition, setSynthetic
-
Methods inherited from class org.codehaus.groovy.ast.ASTNode
copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition, visit
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.codehaus.groovy.ast.NodeMetaDataHandler
copyNodeMetaData, getNodeMetaData, getNodeMetaData, getNodeMetaData, putNodeMetaData, removeNodeMetaData, setNodeMetaData
-
-
-
-
Field Detail
-
EMPTY_ARRAY
public static final Expression[] EMPTY_ARRAY
-
-
Method Detail
-
transformExpression
public abstract Expression transformExpression(ExpressionTransformer transformer)
Return a copy of the expression calling the transformer on any nested expressions- Parameters:
transformer-
-
transformExpressions
protected List<Expression> transformExpressions(List<? extends Expression> expressions, ExpressionTransformer transformer)
Transforms the list of expressions- Returns:
- a new list of transformed expressions
-
transformExpressions
protected <T extends Expression> List<T> transformExpressions(List<? extends Expression> expressions, ExpressionTransformer transformer, Class<T> transformedType)
Transforms the list of expressions, and checks that all transformed expressions have the given type.- Returns:
- a new list of transformed expressions
-
getType
public ClassNode getType()
-
setType
public void setType(ClassNode t)
-
-