org.codehaus.groovy.ast.expr
Class Expression

java.lang.Object
  extended byorg.codehaus.groovy.ast.ASTNode
      extended byorg.codehaus.groovy.ast.expr.Expression
Direct Known Subclasses:
ArrayExpression, AttributeExpression, BinaryExpression, BitwiseNegExpression, BooleanExpression, BytecodeExpression, CastExpression, ClassExpression, ClosureExpression, ConstantExpression, ConstructorCallExpression, FieldExpression, GStringExpression, ListExpression, MapEntryExpression, MapExpression, MethodCallExpression, NegationExpression, PostfixExpression, PrefixExpression, PropertyExpression, RangeExpression, RegexExpression, StaticMethodCallExpression, TernaryExpression, TupleExpression, VariableExpression

public abstract class Expression
extends ASTNode

Represents a base class for expressions which evaluate as an object

Version:
$Revision: 1.4 $
Author:
James Strachan

Field Summary
(package private)  java.lang.String failure
           
private  boolean resolveFailed
           
protected  java.lang.String type
           
 java.lang.Class typeClass
           
protected  boolean typeResolved
           
 
Fields inherited from class org.codehaus.groovy.ast.ASTNode
EMPTY_STRING_ARRAY
 
Constructor Summary
Expression()
           
 
Method Summary
 java.lang.String getFailure()
           
 java.lang.String getType()
           
 java.lang.Class getTypeClass()
           
 boolean isDynamic()
          true if the datatype can be changed, false otherwise.
 boolean isResolveFailed()
           
 boolean isTypeResolved()
           
 void resolve(AsmClassGenerator cg)
           
protected abstract  void resolveType(AsmClassGenerator resolver)
           
 void setFailure(java.lang.String failure)
           
 void setResolveFailed(boolean resolveFailed)
           
 void setType(java.lang.String name)
           
 void setTypeClass(java.lang.Class typeClass)
           
 void setTypeResolved(boolean b)
           
protected  boolean shouldContinue()
           
abstract  Expression transformExpression(ExpressionTransformer transformer)
          Return a copy of the expression calling the transformer on any nested expressions
protected  java.util.List transformExpressions(java.util.List expressions, ExpressionTransformer transformer)
          Transforms the list of expressions
 
Methods inherited from class org.codehaus.groovy.ast.ASTNode
getColumnNumber, getLineNumber, getText, setColumnNumber, setCSTNode, setLineNumber, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

typeResolved

protected boolean typeResolved

failure

java.lang.String failure

resolveFailed

private boolean resolveFailed

typeClass

public java.lang.Class typeClass

type

protected java.lang.String type
Constructor Detail

Expression

public Expression()
Method Detail

isResolveFailed

public boolean isResolveFailed()

setResolveFailed

public void setResolveFailed(boolean resolveFailed)

getFailure

public java.lang.String getFailure()

setFailure

public void setFailure(java.lang.String failure)

getTypeClass

public java.lang.Class getTypeClass()

setTypeClass

public void setTypeClass(java.lang.Class typeClass)

getType

public java.lang.String getType()

isDynamic

public boolean isDynamic()
true if the datatype can be changed, false otherwise.

Returns:

transformExpression

public abstract Expression transformExpression(ExpressionTransformer transformer)
Return a copy of the expression calling the transformer on any nested expressions

Parameters:
transformer -
Returns:

transformExpressions

protected java.util.List transformExpressions(java.util.List expressions,
                                              ExpressionTransformer transformer)
Transforms the list of expressions

Returns:
a new list of transformed expressions

setType

public void setType(java.lang.String name)

isTypeResolved

public boolean isTypeResolved()

setTypeResolved

public void setTypeResolved(boolean b)

resolve

public void resolve(AsmClassGenerator cg)

resolveType

protected abstract void resolveType(AsmClassGenerator resolver)

shouldContinue

protected boolean shouldContinue()


Copyright © 2003-2005 The Codehaus. All Rights Reserved.