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 ClassNode
getType()
void
setType(ClassNode t)
abstract Expression
transformExpression(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)
-
-