AST
node type Binary

General Info

Production
Binary : Expr ::= LeftOperand:Expr RightOperand:Expr;
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by AST.ASTNode<ASTNode>
          extended by AST.Expr
              extended by AST.Binary
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>
Direct Known Subclasses:
ArithmeticExpr, BitwiseExpr, LogicalExpr, RelationalExpr, ShiftExpr

Description

Source
Declared in Java1.4Frontend/java.ast at line 150

Member Filters

API level:

Aspect:

Constructors

public Binary()
 
public Binary(Expr p0,
              Expr p1)
 

Attributes

syn java.lang.String printOp()
Source
Declared in Java1.4Frontend/PrettyPrint.jadd at line 400
Aspect
PrettyPrint
syn boolean isConstant()
Overrides:isConstant in class Expr
Source
Declared in Java7Frontend/ConstantExpression.jrag at line 345
Aspect
ConstantExpression
syn Expr left()
Source
Declared in Java7Frontend/ConstantExpression.jrag at line 368
Aspect
ConstantExpression
syn Expr right()
Source
Declared in Java7Frontend/ConstantExpression.jrag at line 369
Aspect
ConstantExpression
Source
Declared in Java7Frontend/ConstantExpression.jrag at line 370
Aspect
ConstantExpression
syn boolean isDAafterTrue(Variable v)
Overrides:isDAafterTrue in class Expr
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 401
Aspect
DA
syn boolean isDAafterFalse(Variable v)
Overrides:isDAafterFalse in class Expr
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 402
Aspect
DA
syn boolean isDAafter(Variable v)
Overrides:isDAafter in class Expr
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 404
Aspect
DA
syn boolean isDUafter(Variable v)
Overrides:isDUafter in class Expr
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 845
Aspect
DU
inh boolean isDUbefore(Variable v)
Overrides:isDUbefore in class Expr
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 696
Aspect
DU

Methods

public void flushCache()
Overrides:flushCache in class Expr
public void flushCollectionCache()
Overrides:flushCollectionCache in class Expr
public Binary clone()
             throws java.lang.CloneNotSupportedException
Overrides:clone in class Expr
Throws:
java.lang.CloneNotSupportedException
public void toString(java.lang.StringBuffer s)
Overrides:toString in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/PrettyPrint.jadd at line 394
Aspect
PrettyPrint
public void createBCode(CodeGeneration gen)
Overrides:createBCode in class ASTNode<ASTNode>
Source
Declared in Java1.4Backend/CreateBCode.jrag at line 881
Aspect
CreateBCode
public void emitShiftExpr(CodeGeneration gen)
Source
Declared in Java1.4Backend/CreateBCode.jrag at line 889
Aspect
CreateBCode
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class Expr
protected int numChildren()
Overrides:numChildren in class Expr
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class Expr
public void setLeftOperand(Expr node)
Replaces the LeftOperand child.
Parameters:
node - The new node to replace the LeftOperand child.
Retrieves the LeftOperand child.
Returns:
The current node used as the LeftOperand child.
Retrieves the LeftOperand child.

This method does not invoke AST transformations.

Returns:
The current node used as the LeftOperand child.
public void setRightOperand(Expr node)
Replaces the RightOperand child.
Parameters:
node - The new node to replace the RightOperand child.
Retrieves the RightOperand child.
Returns:
The current node used as the RightOperand child.
Retrieves the RightOperand child.

This method does not invoke AST transformations.

Returns:
The current node used as the RightOperand child.
public boolean Define_boolean_isDAbefore(ASTNode caller,
                                         ASTNode child,
                                         Variable v)
Overrides:Define_boolean_isDAbefore in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 405
public boolean Define_boolean_isDUbefore(ASTNode caller,
                                         ASTNode child,
                                         Variable v)
Overrides:Define_boolean_isDUbefore in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 846
Overrides:rewriteTo in class Expr

Fields

protected int isConstant_visited
protected boolean isConstant_computed
protected boolean isConstant_initialized
protected boolean isConstant_value
protected java.util.Map isDAafterTrue_Variable_values
protected java.util.Map isDAafterFalse_Variable_values
protected java.util.Map isDAafter_Variable_values
protected java.util.Map isDUafter_Variable_values
protected java.util.Map isDUbefore_Variable_values

Inherited Members

Attributes inherited from AST.Expr

Attributes inherited from AST.ASTNode

Methods inherited from class AST.Expr

Methods inherited from class AST.ASTNode

Methods inherited from class beaver.Symbol

getColumn
getEnd
getId
getLine
getStart
makePosition

Methods inherited from class java.lang.Object

equals
finalize
getClass
hashCode
notify
notifyAll
wait
wait
wait

Fields inherited from AST.Expr

Fields inherited from AST.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value