Package org.codehaus.groovy.ast.expr
Class ArrayExpression
- java.lang.Object
-
- org.codehaus.groovy.ast.ASTNode
-
- org.codehaus.groovy.ast.AnnotatedNode
-
- org.codehaus.groovy.ast.expr.Expression
-
- org.codehaus.groovy.ast.expr.ArrayExpression
-
- All Implemented Interfaces:
GroovydocHolder<AnnotatedNode>
,NodeMetaDataHandler
public class ArrayExpression extends Expression
Represents an array object construction. One of:- a fixed size array (e.g.
new String[3]
ornew Integer[2][3])
- an array with an explicit initializer (e.g.
new String[]{ "foo", "bar" }
)
-
-
Field Summary
-
Fields inherited from class org.codehaus.groovy.ast.expr.Expression
EMPTY_ARRAY
-
Fields inherited from interface groovy.lang.groovydoc.GroovydocHolder
DOC_COMMENT
-
-
Constructor Summary
Constructors Constructor Description ArrayExpression(ClassNode elementType, List<Expression> initExpressions)
Creates an array using an initializer (list of expressions corresponding to array elements)ArrayExpression(ClassNode elementType, List<Expression> initExpressions, List<Expression> sizeExpressions)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addExpression(Expression initExpression)
Add another element to the initializer expressionsClassNode
getElementType()
Expression
getExpression(int i)
Get a particular initializer expressionList<Expression>
getExpressions()
Get the initializer expressionsList<Expression>
getSizeExpression()
String
getText()
boolean
hasInitializer()
boolean
isDynamic()
String
toString()
Expression
transformExpression(ExpressionTransformer transformer)
Return a copy of the expression calling the transformer on any nested expressionsvoid
visit(GroovyCodeVisitor visitor)
-
Methods inherited from class org.codehaus.groovy.ast.expr.Expression
getType, setType, transformExpressions, transformExpressions
-
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, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.codehaus.groovy.ast.NodeMetaDataHandler
copyNodeMetaData, getNodeMetaData, getNodeMetaData, getNodeMetaData, putNodeMetaData, removeNodeMetaData, setNodeMetaData
-
-
-
-
Constructor Detail
-
ArrayExpression
public ArrayExpression(ClassNode elementType, List<Expression> initExpressions, List<Expression> sizeExpressions)
-
ArrayExpression
public ArrayExpression(ClassNode elementType, List<Expression> initExpressions)
Creates an array using an initializer (list of expressions corresponding to array elements)
-
-
Method Detail
-
addExpression
public void addExpression(Expression initExpression)
Add another element to the initializer expressions
-
getExpressions
public List<Expression> getExpressions()
Get the initializer expressions
-
visit
public void visit(GroovyCodeVisitor visitor)
-
isDynamic
public boolean isDynamic()
-
transformExpression
public Expression transformExpression(ExpressionTransformer transformer)
Description copied from class:Expression
Return a copy of the expression calling the transformer on any nested expressions- Specified by:
transformExpression
in classExpression
-
getExpression
public Expression getExpression(int i)
Get a particular initializer expression
-
getElementType
public ClassNode getElementType()
-
hasInitializer
public boolean hasInitializer()
- Returns:
- true if the array expression is defined by an explicit initializer
-
getSizeExpression
public List<Expression> getSizeExpression()
- Returns:
- a list with elements corresponding to the array's dimensions
-
-