Package avrora.core.isdl.ast

Interface Summary
CodeRebuilder The CodeVisitor interface represents a visitor that is more specific than the ExprVisitor visitor, in that it contains visit methods for every type of arithmetic and logical operation in the IR.
CodeVisitor The CodeVisitor interface represents a visitor that is more specific than the ExprVisitor visitor, in that it contains visit methods for every type of arithmetic and logical operation in the IR.
ExprVisitor The ExprVisitor interface is part of the visitor pattern for expressions within the program.
StmtRebuilder The StmtVisitor interface implements the visitor pattern so that clients can visit the abstract syntax tree nodes representing statements in the program.
StmtVisitor The StmtVisitor interface implements the visitor pattern so that clients can visit the abstract syntax tree nodes representing statements in the program.
 

Class Summary
Arith The Arith class is a container for classes that represent integer arithmetic in the IR.
Arith.AddExpr The AddExpr inner class represents the addition of two integer values that produces a new integer value.
Arith.AndExpr The AndExpr class represents the bitwise and of two integer values that produces a single integer result.
Arith.BinOp The BinOp inner class represents an operation on two integers with an infix binary operation.
Arith.CompExpr The CompExpr class represents the bitwise complement of an integer value that produces a single integer result.
Arith.DivExpr The DivExpr inner class represents a division operation on two integer values which produces a single integer result.
Arith.MulExpr The MulExpr inner class represents the multiplication of two integer values which produces a single integer result.
Arith.NegExpr The NegExpr class represents the negation (sign reversal) of an integer value that produces a single integer result.
Arith.OrExpr The OrExpr class represents the bitwise inclusive or of two integer values that produces a single integer result.
Arith.ShiftLeftExpr The ShiftLeftExpr class represents the shift left of an integer value that produces a single integer result.
Arith.ShiftRightExpr The ShiftRightExpr class represents the shift left of an integer value that produces a single integer result.
Arith.SubExpr The SubExpr inner class represents the subtraction of one integer value from another that results in a new integer value.
Arith.UnOp The UnOp inner class represents an operation on a single integer value.
Arith.XorExpr The XorExpr class represents the bitwise exclusive or of two integer values that produces a single integer result.
AssignStmt The AssignStmt class represents an assignment statement in the IR.
BitExpr The BitExpr class represents an access of an individual bit within a value.
BitRangeExpr The BitRangeExpr class represents an expression whose value is the result of extracting a range of the bits from another expression.
CallExpr The CallExpr class represents a subroutine call within the IR.
CallStmt The CallStmt class represents a call to a subroutine that does not produce a value.
CodeRebuilder.DepthFirst The DepthFirst class is a base implementation of the CodeVisitor interface that visits the tree in depth-first order.
CodeVisitor.Default The DepthFirst class is a base implementation of the CodeVisitor interface that visits the tree in depth-first order.
CodeVisitor.DepthFirst The DepthFirst class is a base implementation of the CodeVisitor interface that visits the tree in depth-first order.
CommentStmt  
ConversionExpr The MapExpr class represents an expression that is an access of an element within a map.
DeclStmt The DeclStmt represents a declaration of a local, temporary value in the IR.
Expr The Expr class represents an expression in the IR.
ExprVisitor.DepthFirst The DepthFirst class is a base implementation of the ExprVisitor interface that visits the tree in depth-first order.
IfStmt The IfStmt class represents a simple branch within the IR.
Literal The Literal class represents a literal (constant value) as part of an expression.
Literal.BoolExpr The BoolExpr inner class represents a boolean literal that has a known, constant value (true or false).
Literal.IntExpr The IntExpr inner class represents an integer literal that has a known, constant value.
Logical The Logical class is a container for classes that represent expressions that produce booleans in the IR.
Logical.AndExpr The AndExpr inner class represents the logical AND of two boolean values that produces a new boolean value.
Logical.BinOp The BinOp inner class represents an operation on two values with an infix binary operation that produces a boolean.
Logical.EquExpr The EquExpr inner class represents a comparison for equality of two integer values that produces a single boolean value.
Logical.GreaterEquExpr The GreaterEquExpr inner class represents a comparison of two integer values that produces a single boolean value that is true if and only if the first operand is greater than or equal to the second operand.
Logical.GreaterExpr The GreaterExpr inner class represents a comparison of two integer values that produces a single boolean value that is true if and only if the first operand is greater than the second operand.
Logical.LessEquExpr The LessEquExpr inner class represents a comparison of two integer values that produces a single boolean value that is true if and only if the first operand is less than or equal to the second operand.
Logical.LessExpr The LessExpr inner class represents a comparison of two integer values that produces a single boolean value that is true if and only if the first operand is less than the second operand.
Logical.NequExpr The NequExpr inner class represents a comparison for inequality of two integer values that produces a single boolean value.
Logical.NotExpr The NotExpr inner class represents the logical negation of a single boolean value that produces a new integer value.
Logical.OrExpr The OrExpr inner class represents the logical OR of two boolean values that produces a new boolean value.
Logical.UnOp The UnOp inner class represents an operation on a single boolean value.
Logical.XorExpr The XorExpr inner class represents the logical XOR of two boolean values that produces a new boolean value.
MapAssignStmt The MapAssignStmt class represents a statement that is an assignment to an element of a map.
MapBitAssignStmt The MapBitAssignStmt represents an assignment to a single bit within an element within a map.
MapBitRangeAssignStmt The MapBitRangeAssignment class represents an assignment to a range of bits of an element within a map.
MapExpr The MapExpr class represents an expression that is an access of an element within a map.
ReturnStmt The ReturnStmt class represents a return statement within a subroutine that returns a value to its caller.
Stmt The Stmt class represents a statement in the IR that expresses the computation of an instruction.
StmtRebuilder.DepthFirst The DepthFirst class is a base implementation of the StmtVisitor interface that visits the tree in depth-first order.
StmtVisitor.DepthFirst The DepthFirst class is a base implementation of the StmtVisitor interface that visits the tree in depth-first order.
VarAssignStmt The VarAssignStmt class represents an assignment to a local or global variable within the IR for an instruction or a subroutine.
VarBitAssignStmt The VarBitAssignStmt class represents an assignment to a single bit within a local or global variable.
VarBitRangeAssignStmt The VarBitRangeAssignStmt method represents an assignment to a range of bits within a local or global variable.
VarExpr The VarExpr class represents an expression in the IR that is a use of a local or global variable.