| Interface | Description |
|---|---|
| Annotatable |
Annotatable interface defines methods for Cetus IR that contains a list
of annotations.
|
| Intrinsic |
Any class implementing this interface has the properties of what we
call an intrinsic function, it has a specific meaning and is
represented as an Expression in the IR.
|
| Loop |
Any class implementing this interface has the properties of a loop.
|
| Printable |
Any class implementing this interface can print its data.
|
| Symbol |
An IR object that implements Symbol interface is identified as a unique
symbol in the program.
|
| SymbolTable | |
| Traversable |
Any class implementing this interface can act
as a tree node by providing access to its children
and parent.
|
| Class | Description |
|---|---|
| AccessExpression |
AccessExpression is a representation for expressions that access
a member of class-like objects.
|
| AccessLevel | Deprecated |
| AccessOperator |
Infix operators that accesses righthand side member of lefthand side
structure, class, or union.
|
| AccessSymbol |
AccessSymbol is intended to express an object of AccessExpression as a
Symbol object.
|
| AlignofExpression |
AlignofExpression represents the non-standard __alignof__ operation.
|
| Annotation |
Annotation is the base class of any annotation type used in Cetus.
|
| AnnotationDeclaration |
AnnotationDeclaration is used for stand-alone annotations in non-executable
code section, e.g., in a TranslationUnit.
|
| AnnotationStatement |
AnnotationStatement is used for stand-alone annotations in executable
code section, e.g., in a CompoundStatement.
|
| ArrayAccess |
Represents the access of an array or pointer variable: array[x][y]...
|
| ArraySpecifier |
Represents an array specifier, for example the bracketed
parts of int array[20][30];
|
| AssignmentExpression |
AssignmentExpression represents an assignment expression having a
LHS expression, assignment operator, and a RHS expression.
|
| AssignmentOperator |
Infix operators that assign the value of their righthand side to their
lefthand side.
|
| BinaryExpression |
BinaryExpression represents an expression having a LHS operand, an
operator, and a RHS operand.
|
| BinaryOperator |
Infix operators that act on two expressions.
|
| BitfieldSpecifier |
BitfieldSpecifier represents the bit field declared in a struct
declaration.
|
| BooleanLiteral |
Represents a boolean literal (true or false).
|
| BreadthFirstIterator<E extends Traversable> |
Iterates over Traversable objects in breadth-first order.
|
| BreakStatement |
Represents a break statement: break ';'
|
| Case |
Represents a case for use with switch.
|
| CetusAnnotation |
CetusAnnotation is used for internal annotations inserted by Cetus analysis
and transformation.
|
| ChainedList<T> |
Very similar to a LinkedList, except provides an add method that
returns the list itself, allowing you to perform method chaining.
|
| CharLiteral |
Represents a character literal in the program.
|
| ClassDeclaration |
Represents a class, struct, or union.
|
| ClassDeclaration.Key |
Class for representing the four different types of class declarations,
class, struct, union, and interface.
|
| CodeAnnotation |
CodeAnnotation is used for an annotation of raw code type.
|
| CommaExpression |
Represents expressions separated by the comma operator in C or C++.
|
| CommentAnnotation |
CommentAnnotation is used for an annotation of comment type.
|
| CompoundLiteral | |
| CompoundStatement |
CompoundStatement represents a group of statements that are treated
as a single statement.
|
| ConditionalExpression |
Represents the only ternary expression in C and C++, the ?: operator.
|
| ConstructorInitializer |
This class is no longer supported
|
| ContinueStatement |
Represents a continue statement: continue ';'
|
| DataFlowTools | |
| Declaration |
Base class for all declarations.
|
| DeclarationStatement |
Represents a statement that contains a declaration as the only child, and
appears within a compound statement.
|
| Declarator |
Represents the part of a declaration that is the name of the symbol, some type
information, and initial values.
|
| Default |
Represents a default for use with switch.
|
| DeleteExpression |
This class is not supported.
|
| DepthFirstIterator<E extends Traversable> |
Iterates over Traversable objects in depth-first order.
|
| DerefSymbol |
Class DerefSymbol represents symbol object that does not exist in the
IR as a variable declarator but is accessible through pointer dereferencing.
|
| DestructorID |
Represents the name of a C++ destructor.
|
| DFIterator<E extends Traversable> |
Alternative implementation to
DepthFirstIterator, which supports
depth-first iteration over a specific type when requested. |
| DoLoop |
DoLoop represents a C-style do-while loop.
|
| Enumeration |
Enumeration represents a C or C++ enumeration.
|
| EscapeLiteral |
Represents a escape character.
|
| ExceptionHandler |
Represents an exception handling block (try-catch-finally block) in a C++ or
Java program.
|
| ExceptionSpecification | |
| Expression |
Base class for all expressions.
|
| ExpressionStatement |
A statement with the purpose of evaluating an expression for a side effect.
|
| FlatIterator<E extends Traversable> |
Iterates over the immediate children of a Traversable object.
|
| FloatLiteral |
Represents a float-type literal in the program.
|
| ForLoop |
ForLoop represents a C-style for loop, typically having an initial
statement, a condition expression, and a step expression.
|
| FunctionCall |
Represents a function or method call.
|
| GotoStatement |
Represents a goto statement having a target label.
|
| Identifier |
Identifier represents a valid C identifier which has a matching
variable declarator.
|
| IDExpression |
IDExpression represents an IR object that appears as an identifier in
the program.
|
| IfStatement |
Represents a if statement in C programs.
|
| InfExpression |
InfExpression represents a literal expression having a value greater
than or less than any possible numbers.
|
| Initializer |
Initializer holds initial values for the associated variable declarator.
|
| InlineAnnotation |
Introduces inline annotations.
|
| IntegerLiteral |
Represents an integer literal in the program.
|
| IRIterator<E extends Traversable> |
An iterator implementing this interface supports special versions of next.
|
| IRTools |
IRTools provides tools that perform search/replace in the IR tree.
|
| Label |
Represents a label for use with goto statements.
|
| LinkageSpecification |
This class is not supported
|
| ListInitializer | |
| Literal |
Represents an immediate value within the program.
|
| MinMaxExpression |
Class for MIN() MAX() expressions - these are equivalent to conditional
expressions.
|
| NameID |
NameID is introduced to separate the uses of
Identifier for
better IR consistency. |
| Namespace |
This class is not supported
|
| NamespaceAlias |
This class is not supported
|
| NestedDeclarator |
Represents a nested declarator that may contain another declarator within
itself.
|
| NewExpression |
This class is no longer supported.
|
| NullStatement |
Represents an empty statement.
|
| OffsetofExpression |
Represents a __builtin_offsetof() operator.
|
| OmpAnnotation |
OmpAnnotation is used for internally representing OpenMP pragmas.
|
| OperatorID |
C++ overloaded operator IDs.
|
| PointerSpecifier |
Represents a C or C++ pointer.
|
| PostOrderIterator<E extends Traversable> |
Peforms a post-order traversal over a Traversable object.
|
| PragmaAnnotation |
PragmaAnnotation is used for annotations of pragma type.
|
| PragmaAnnotation.Event |
Pragma annotation type for event timer.
|
| PragmaAnnotation.Range |
Pragma annotation type for range annotation.
|
| PreAnnotation |
Represents a text annotation (comment or pragma) or a list of keyed values.
|
| PrintTools |
PrintTools provides tools that perform printing of collections of IR
or debug messages.
|
| Procedure |
Represents a function, subroutine, or method.
|
| ProcedureDeclarator |
Represents a declarator for a Procedure in a VariableDeclaration.
|
| Program |
Represents the entire program.
|
| PseudoSymbol |
PseudoSymbol is intended to provide Symbol interface in an
object that is not part of the IR.
|
| QualifiedID |
This class is no longer supported
|
| RangeExpression |
RangeExpression represents a symbolic range with a lower bound
expression and an upper bound expression.
|
| ReturnStatement |
Represents a return statement within a procedure.
|
| SimpleExpression |
SimpleExpression is another form of representing an expression which is
effective in symbolic manipulation.
|
| SizeofExpression |
Represents a sizeof operation in C programs.
|
| SomeExpression |
Represents a container that holds a raw code not expressed as a well-defined
internal representation.
|
| Specifier |
Represents type specifiers and modifiers.
|
| StandardLibrary |
Repository for C99 standard library functions.
|
| Statement |
Base class for all statements.
|
| StatementExpression |
Represents an expression containing a compound statement - GCC extension.
|
| StringLiteral |
Represents a string literal in the program.
|
| SwitchStatement |
Represents a switch statement in C programs.
|
| Symbolic |
Class Symbolic provides static utility methods that simplifies expressions
symbolically.
|
| SymbolTools |
SymbolTools provides tools for interfacing symbol tables and related
searches.
|
| TemplateDeclaration |
This class is not supported
|
| TemplateID |
This class is no longer supported
|
| ThrowExpression |
This class is no longer supported
|
| Tools |
Collection of static tools that are useful in writing passes.
|
| TranslationUnit |
Represents a single source file of the program.
|
| Typecast |
Represents a typecast expression in C programs.
|
| Typecast.Cast |
Represents a cast type
|
| TypeofSpecifier |
This class is no longer supported.
|
| UnaryExpression |
Represents an expression having a unary operator and an operand expression.
|
| UnaryOperator |
Operators that act on a single expression.
|
| UserSpecifier |
Represents the name of a user-defined type, such as created by a typedef,
class declaration, etc.
|
| UsingDeclaration |
This class is not supported
|
| UsingDirective |
This class is not supported
|
| VaArgExpression |
Represents __builtin_va_arg() operation in C programs.
|
| ValueInitializer | |
| VariableDeclaration |
Represents a statement that introduces a new variable
or function prototype.
|
| VariableDeclarator |
Represents a declarator for a variable in a VariableDeclaration.
|
| WhileLoop |
WhileLoop represents a while loop having a condition expression and
a loop body.
|
| Exception | Description |
|---|---|
| DuplicateSymbolException |
Thrown when a symbol is about to be entered into a symbol table and there is
already a symbol of the same name in that same table.
|
| NotAChildException |
Thrown when an action is performed on an IR object and
that action requires the object to be the child of
another object, but that is not the case.
|
| NotAnOrphanException |
Thrown when an action is performed on an IR object
and that object is required to have no parent object,
but that is not the case.
|