jltools.ast
Interface Binary

All Superinterfaces:
java.lang.Cloneable, Copy, Expr, Node, Prefix, Receiver, java.io.Serializable, Typed
All Known Implementing Classes:
Binary_c

public interface Binary
extends Expr

A Binary represents a Java binary expression, an immutable pair of expressions combined with an operator.


Inner Class Summary
static class Binary.Operator
          Binary expression operator.
 
Field Summary
static Binary.Operator ADD
           
static Binary.Operator BIT_AND
           
static Binary.Operator BIT_OR
           
static Binary.Operator BIT_XOR
           
static Binary.Operator COND_AND
           
static Binary.Operator COND_OR
           
static Binary.Operator DIV
           
static Binary.Operator EQ
           
static Binary.Operator GE
           
static Binary.Operator GT
           
static Binary.Operator LE
           
static Binary.Operator LT
           
static Binary.Operator MOD
           
static Binary.Operator MUL
           
static Binary.Operator NE
           
static Binary.Operator SHL
           
static Binary.Operator SHR
           
static Binary.Operator SUB
           
static Binary.Operator USHR
           
 
Method Summary
 Expr left()
           
 Binary left(Expr left)
           
 Binary.Operator operator()
           
 Binary operator(Binary.Operator op)
           
 Expr right()
           
 Binary right(Expr right)
           
 boolean throwsArithmeticException()
           
 
Methods inherited from interface jltools.ast.Expr
precedence, type
 
Methods inherited from interface jltools.ast.Node
buildTypes_, buildTypesOverride_, copy, disambiguate_, disambiguateOverride_, disambiguateTypes_, disambiguateTypesOverride_, dump, enterScope, exceptionCheck_, exceptionCheckOverride_, ext, ext, foldConstants_, foldConstantsOverride_, leaveScope, position, position, reconstructTypes_, translate_, typeCheck_, typeCheckOverride_, visit, visitChildren
 
Methods inherited from interface jltools.ast.Typed
type
 

Field Detail

GT

public static final Binary.Operator GT

LT

public static final Binary.Operator LT

EQ

public static final Binary.Operator EQ

LE

public static final Binary.Operator LE

GE

public static final Binary.Operator GE

NE

public static final Binary.Operator NE

COND_OR

public static final Binary.Operator COND_OR

COND_AND

public static final Binary.Operator COND_AND

ADD

public static final Binary.Operator ADD

SUB

public static final Binary.Operator SUB

MUL

public static final Binary.Operator MUL

DIV

public static final Binary.Operator DIV

MOD

public static final Binary.Operator MOD

BIT_OR

public static final Binary.Operator BIT_OR

BIT_AND

public static final Binary.Operator BIT_AND

BIT_XOR

public static final Binary.Operator BIT_XOR

SHL

public static final Binary.Operator SHL

SHR

public static final Binary.Operator SHR

USHR

public static final Binary.Operator USHR
Method Detail

left

public Expr left()

left

public Binary left(Expr left)

operator

public Binary.Operator operator()

operator

public Binary operator(Binary.Operator op)

right

public Expr right()

right

public Binary right(Expr right)

throwsArithmeticException

public boolean throwsArithmeticException()