avrora.core.isdl.ast
Class Arith.CompExpr

java.lang.Object
  extended byavrora.core.isdl.ast.Expr
      extended byavrora.core.isdl.ast.Arith
          extended byavrora.core.isdl.ast.Arith.UnOp
              extended byavrora.core.isdl.ast.Arith.CompExpr
Enclosing class:
Arith

public static class Arith.CompExpr
extends Arith.UnOp

The CompExpr class represents the bitwise complement of an integer value that produces a single integer result.


Nested Class Summary
 
Nested classes inherited from class avrora.core.isdl.ast.Arith
Arith.AddExpr, Arith.AndExpr, Arith.BinOp, Arith.CompExpr, Arith.DivExpr, Arith.MulExpr, Arith.NegExpr, Arith.OrExpr, Arith.ShiftLeftExpr, Arith.ShiftRightExpr, Arith.SubExpr, Arith.UnOp, Arith.XorExpr
 
Field Summary
 
Fields inherited from class avrora.core.isdl.ast.Arith.UnOp
operand, operation
 
Fields inherited from class avrora.core.isdl.ast.Expr
PREC_A_ADD, PREC_A_AND, PREC_A_MUL, PREC_A_OR, PREC_A_SHIFT, PREC_A_XOR, PREC_L_AND, PREC_L_EQU, PREC_L_OR, PREC_L_REL, PREC_L_XOR, PREC_TERM, PREC_UN
 
Constructor Summary
Arith.CompExpr(Expr l)
           
 
Method Summary
 Expr accept(CodeRebuilder r, java.lang.Object env)
          The accept() method implements one half of the visitor pattern for rebuilding of expressions.
 void accept(CodeVisitor v)
          The accept() method implements one half of the visitor pattern so that client visitors can traverse the syntax tree easily and in an extensible way.
 
Methods inherited from class avrora.core.isdl.ast.Arith.UnOp
accept, getPrecedence, isConstantExpr, toString
 
Methods inherited from class avrora.core.isdl.ast.Expr
getBitWidth, innerString, isBitRangeExpr, isLiteral, isMap, isVariable, tokenToBool, tokenToInt
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Arith.CompExpr

public Arith.CompExpr(Expr l)
Method Detail

accept

public void accept(CodeVisitor v)
The accept() method implements one half of the visitor pattern so that client visitors can traverse the syntax tree easily and in an extensible way.

Specified by:
accept in class Expr
Parameters:
v - the visitor to accept

accept

public Expr accept(CodeRebuilder r,
                   java.lang.Object env)
The accept() method implements one half of the visitor pattern for rebuilding of expressions. This visitor allows code to be slightly modified while only writing visit methods for the parts of the syntax tree affected.

Specified by:
accept in class Expr
Parameters:
r - the rebuilder to accept
Returns:
the result of calling the appropriate visit() method of the rebuilder