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
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 java.util.List<Expression>
transformExpressions(java.util.List<? extends Expression> expressions, ExpressionTransformer transformer)
Transforms the list of expressionsprotected <T extends Expression>
java.util.List<T>transformExpressions(java.util.List<? extends Expression> expressions, ExpressionTransformer transformer, java.lang.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 Details
-
EMPTY_ARRAY
-
-
Constructor Details
-
Expression
public Expression()
-
-
Method Details
-
transformExpression
Return a copy of the expression calling the transformer on any nested expressions- Parameters:
transformer
-
-
transformExpressions
protected java.util.List<Expression> transformExpressions(java.util.List<? extends Expression> expressions, ExpressionTransformer transformer)Transforms the list of expressions- Returns:
- a new list of transformed expressions
-
transformExpressions
protected <T extends Expression> java.util.List<T> transformExpressions(java.util.List<? extends Expression> expressions, ExpressionTransformer transformer, java.lang.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
-
setType
-