org.codehaus.groovy.ast.expr
Class BinaryExpression

java.lang.Object
  extended byorg.codehaus.groovy.ast.ASTNode
      extended byorg.codehaus.groovy.ast.expr.Expression
          extended byorg.codehaus.groovy.ast.expr.BinaryExpression

public class BinaryExpression
extends Expression

Represents two expressions and an operation

Version:
$Revision: 1.6 $
Author:
James Strachan

Field Summary
 
Fields inherited from class org.codehaus.groovy.ast.expr.Expression
type, typeClass, typeResolved
 
Fields inherited from class org.codehaus.groovy.ast.ASTNode
EMPTY_STRING_ARRAY
 
Constructor Summary
BinaryExpression(Expression leftExpression, Token operation, Expression rightExpression)
           
 
Method Summary
 Expression getLeftExpression()
           
 Token getOperation()
           
 Expression getRightExpression()
           
 String getText()
           
 Class getTypeClass()
           
 boolean isDynamic()
          true if the datatype can be changed, false otherwise.
static BinaryExpression newAssignmentExpression(String variable, Expression rhs)
          Creates an assignment expression in which the specified expression is written into the specified variable name.
static BinaryExpression newInitializationExpression(String variable, Type type, Expression rhs)
          Creates variable initialization expression in which the specified expression is written into the specified variable name.
protected  void resolveType(AsmClassGenerator2 resolver)
           
 void setLeftExpression(Expression leftExpression)
           
 void setRightExpression(Expression rightExpression)
           
 String toString()
           
 Expression transformExpression(ExpressionTransformer transformer)
          Return a copy of the expression calling the transformer on any nested expressions
 void visit(GroovyCodeVisitor visitor)
           
 
Methods inherited from class org.codehaus.groovy.ast.expr.Expression
getFailure, getType, isResolveFailed, isTypeResolved, resolve, setFailure, setResolveFailed, setType, setTypeClass, setTypeResolved, shouldContinue, transformExpressions
 
Methods inherited from class org.codehaus.groovy.ast.ASTNode
getColumnNumber, getLineNumber, setColumnNumber, setCSTNode, setLineNumber
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BinaryExpression

public BinaryExpression(Expression leftExpression,
                        Token operation,
                        Expression rightExpression)
Method Detail

getTypeClass

public Class getTypeClass()
Overrides:
getTypeClass in class Expression

isDynamic

public boolean isDynamic()
Description copied from class: Expression
true if the datatype can be changed, false otherwise.

Overrides:
isDynamic in class Expression
Returns:

toString

public String toString()

visit

public void visit(GroovyCodeVisitor visitor)
Overrides:
visit in class ASTNode

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 class Expression
Parameters:
transformer -
Returns:

getLeftExpression

public Expression getLeftExpression()

setLeftExpression

public void setLeftExpression(Expression leftExpression)

setRightExpression

public void setRightExpression(Expression rightExpression)

getOperation

public Token getOperation()

getRightExpression

public Expression getRightExpression()

getText

public String getText()
Overrides:
getText in class ASTNode

newAssignmentExpression

public static BinaryExpression newAssignmentExpression(String variable,
                                                       Expression rhs)
Creates an assignment expression in which the specified expression is written into the specified variable name.


newInitializationExpression

public static BinaryExpression newInitializationExpression(String variable,
                                                           Type type,
                                                           Expression rhs)
Creates variable initialization expression in which the specified expression is written into the specified variable name.


resolveType

protected void resolveType(AsmClassGenerator2 resolver)
Specified by:
resolveType in class Expression


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