| Package | Description |
|---|---|
| cetus.analysis | |
| cetus.application | |
| cetus.base.grammars | |
| cetus.hir |
| Modifier and Type | Method and Description |
|---|---|
static java.util.Set<Expression> |
DataFlow.defines(Traversable root)
Deprecated.
|
static java.util.TreeMap<Expression,Expression> |
DataFlow.defSet(Traversable root)
Deprecated.
Determines the set of definitions in the IR subtree starting
at the specified root.
|
static java.util.List<Loop> |
LoopTools.extractOutermostDependenceTestEligibleLoops(Traversable t) |
static java.util.Set<Expression> |
DataFlow.getUseSet(Traversable root)
Deprecated.
Determines the set of uses in the IR subtree starting
at the specified root.
|
static java.util.TreeSet<Expression> |
DataFlow.mayDefine(Traversable root)
Deprecated.
|
void |
Section.MAP.removeSideAffected(Traversable tr)
Removes sections that are unsafe in the given traversable object due
to function calls.
|
static java.lang.String |
RangeAnalysis.toPrettyRanges(Traversable t,
java.util.Map<Statement,RangeDomain> ranges,
java.lang.Integer indent)
Returns the range map in a pretty format.
|
| Constructor and Description |
|---|
CFGraph(Traversable t)
Constructs a CFGraph object with the given traversable object.
|
CFGraph(Traversable t,
java.lang.Class<? extends Traversable> supernode)
Constructs a CFGraph object with the given traversable object and the
IR type whose sub graph is pruned.
|
CFGraph(Traversable t,
java.lang.Class<? extends Traversable> supernode,
boolean includeDeclarator,
java.util.List<VariableDeclaration> paramList)
Constructs a CFGraph object which is used by def-use/use-def chain computation.
|
| Constructor and Description |
|---|
CFGraph(Traversable t,
java.lang.Class<? extends Traversable> supernode)
Constructs a CFGraph object with the given traversable object and the
IR type whose sub graph is pruned.
|
CFGraph(Traversable t,
java.lang.Class<? extends Traversable> supernode,
boolean includeDeclarator,
java.util.List<VariableDeclaration> paramList)
Constructs a CFGraph object which is used by def-use/use-def chain computation.
|
| Modifier and Type | Method and Description |
|---|---|
java.util.List<Traversable> |
UseDefChain.getDefList(Expression use)
Returns interprocedural definition list.
|
java.util.List<Traversable> |
IPChainAnalysis.getDefList(Expression use) |
java.util.List<Traversable> |
UseDefChain.getLocalDefList(Expression use)
Returns intraprocedural defintion list
|
java.util.List<Traversable> |
IPChainAnalysis.getLocalDefList(Expression use) |
java.util.List<Traversable> |
IPChainAnalysis.getLocalUseList(Expression def) |
java.util.List<Traversable> |
DefUseChain.getLocalUseList(Expression def)
Returns intraprocedural use list.
|
java.util.List<Traversable> |
IPChainAnalysis.getUseList(Expression def) |
java.util.List<Traversable> |
DefUseChain.getUseList(Expression def)
Returns interprocedural use list.
|
| Modifier and Type | Method and Description |
|---|---|
static Procedure |
ChainTools.getParentProcedure(Traversable trav,
Program program) |
static java.util.List<Expression> |
ChainTools.getPlainDefList(Traversable tr,
Procedure proc)
This returns the definition list in the plain assignment statement;
|
static java.util.List<Expression> |
ChainTools.getUseList(Traversable traversable) |
static void |
ChainTools.traverseIR(Traversable tr) |
| Modifier and Type | Method and Description |
|---|---|
void |
NewCParser.strOptExprPair(java.util.List<Traversable> expr_list) |
| Modifier and Type | Class and Description |
|---|---|
class |
BreadthFirstIterator<E extends Traversable>
Iterates over Traversable objects in breadth-first order.
|
class |
DepthFirstIterator<E extends Traversable>
Iterates over Traversable objects in depth-first order.
|
class |
DFIterator<E extends Traversable>
Alternative implementation to
DepthFirstIterator, which supports
depth-first iteration over a specific type when requested. |
class |
FlatIterator<E extends Traversable>
Iterates over the immediate children of a Traversable object.
|
class |
IRIterator<E extends Traversable>
An iterator implementing this interface supports special versions of next.
|
class |
PostOrderIterator<E extends Traversable>
Peforms a post-order traversal over a Traversable object.
|
| Modifier and Type | Interface and Description |
|---|---|
interface |
Annotatable
Annotatable interface defines methods for Cetus IR that contains a list
of annotations.
|
interface |
Loop
Any class implementing this interface has the properties of a loop.
|
interface |
SymbolTable |
| Modifier and Type | Class and Description |
|---|---|
class |
AccessExpression
AccessExpression is a representation for expressions that access
a member of class-like objects.
|
class |
AccessLevel
Deprecated.
|
class |
AlignofExpression
AlignofExpression represents the non-standard __alignof__ operation.
|
class |
AnnotationDeclaration
AnnotationDeclaration is used for stand-alone annotations in non-executable
code section, e.g., in a TranslationUnit.
|
class |
AnnotationStatement
AnnotationStatement is used for stand-alone annotations in executable
code section, e.g., in a CompoundStatement.
|
class |
ArrayAccess
Represents the access of an array or pointer variable: array[x][y]...
|
class |
AssignmentExpression
AssignmentExpression represents an assignment expression having a
LHS expression, assignment operator, and a RHS expression.
|
class |
BinaryExpression
BinaryExpression represents an expression having a LHS operand, an
operator, and a RHS operand.
|
class |
BooleanLiteral
Represents a boolean literal (true or false).
|
class |
BreakStatement
Represents a break statement: break ';'
|
class |
Case
Represents a case for use with switch.
|
class |
CharLiteral
Represents a character literal in the program.
|
class |
ClassDeclaration
Represents a class, struct, or union.
|
class |
CommaExpression
Represents expressions separated by the comma operator in C or C++.
|
class |
CompoundLiteral |
class |
CompoundStatement
CompoundStatement represents a group of statements that are treated
as a single statement.
|
class |
ConditionalExpression
Represents the only ternary expression in C and C++, the ?: operator.
|
class |
ConstructorInitializer
This class is no longer supported
|
class |
ContinueStatement
Represents a continue statement: continue ';'
|
class |
Declaration
Base class for all declarations.
|
class |
DeclarationStatement
Represents a statement that contains a declaration as the only child, and
appears within a compound statement.
|
class |
Declarator
Represents the part of a declaration that is the name of the symbol, some type
information, and initial values.
|
class |
Default
Represents a default for use with switch.
|
class |
DeleteExpression
This class is not supported.
|
class |
DestructorID
Represents the name of a C++ destructor.
|
class |
DoLoop
DoLoop represents a C-style do-while loop.
|
class |
Enumeration
Enumeration represents a C or C++ enumeration.
|
class |
EscapeLiteral
Represents a escape character.
|
class |
ExceptionHandler
Represents an exception handling block (try-catch-finally block) in a C++ or
Java program.
|
class |
Expression
Base class for all expressions.
|
class |
ExpressionStatement
A statement with the purpose of evaluating an expression for a side effect.
|
class |
FloatLiteral
Represents a float-type literal in the program.
|
class |
ForLoop
ForLoop represents a C-style for loop, typically having an initial
statement, a condition expression, and a step expression.
|
class |
FunctionCall
Represents a function or method call.
|
class |
GotoStatement
Represents a goto statement having a target label.
|
class |
Identifier
Identifier represents a valid C identifier which has a matching
variable declarator.
|
class |
IDExpression
IDExpression represents an IR object that appears as an identifier in
the program.
|
class |
IfStatement
Represents a if statement in C programs.
|
class |
InfExpression
InfExpression represents a literal expression having a value greater
than or less than any possible numbers.
|
class |
Initializer
Initializer holds initial values for the associated variable declarator.
|
class |
IntegerLiteral
Represents an integer literal in the program.
|
class |
Label
Represents a label for use with goto statements.
|
class |
LinkageSpecification
This class is not supported
|
class |
ListInitializer |
class |
Literal
Represents an immediate value within the program.
|
class |
MinMaxExpression
Class for MIN() MAX() expressions - these are equivalent to conditional
expressions.
|
class |
NameID
NameID is introduced to separate the uses of
Identifier for
better IR consistency. |
class |
Namespace
This class is not supported
|
class |
NamespaceAlias
This class is not supported
|
class |
NestedDeclarator
Represents a nested declarator that may contain another declarator within
itself.
|
class |
NewExpression
This class is no longer supported.
|
class |
NullStatement
Represents an empty statement.
|
class |
OffsetofExpression
Represents a __builtin_offsetof() operator.
|
class |
OperatorID
C++ overloaded operator IDs.
|
class |
PreAnnotation
Represents a text annotation (comment or pragma) or a list of keyed values.
|
class |
Procedure
Represents a function, subroutine, or method.
|
class |
ProcedureDeclarator
Represents a declarator for a Procedure in a VariableDeclaration.
|
class |
Program
Represents the entire program.
|
class |
QualifiedID
This class is no longer supported
|
class |
RangeExpression
RangeExpression represents a symbolic range with a lower bound
expression and an upper bound expression.
|
class |
ReturnStatement
Represents a return statement within a procedure.
|
class |
SizeofExpression
Represents a sizeof operation in C programs.
|
class |
SomeExpression
Represents a container that holds a raw code not expressed as a well-defined
internal representation.
|
class |
Statement
Base class for all statements.
|
class |
StatementExpression
Represents an expression containing a compound statement - GCC extension.
|
class |
StringLiteral
Represents a string literal in the program.
|
class |
SwitchStatement
Represents a switch statement in C programs.
|
class |
TemplateDeclaration
This class is not supported
|
class |
TemplateID
This class is no longer supported
|
class |
ThrowExpression
This class is no longer supported
|
class |
TranslationUnit
Represents a single source file of the program.
|
class |
Typecast
Represents a typecast expression in C programs.
|
class |
UnaryExpression
Represents an expression having a unary operator and an operand expression.
|
class |
UsingDeclaration
This class is not supported
|
class |
UsingDirective
This class is not supported
|
class |
VaArgExpression
Represents __builtin_va_arg() operation in C programs.
|
class |
ValueInitializer |
class |
VariableDeclaration
Represents a statement that introduces a new variable
or function prototype.
|
class |
VariableDeclarator
Represents a declarator for a variable in a VariableDeclaration.
|
class |
WhileLoop
WhileLoop represents a while loop having a condition expression and
a loop body.
|
| Modifier and Type | Method and Description |
|---|---|
static <T extends Traversable> |
Tools.getAncestorOfType(Traversable t,
java.lang.Class<T> type)
Deprecated.
|
static <T extends Traversable> |
IRTools.getAncestorOfType(Traversable t,
java.lang.Class<T> type)
Returns the nearest ancestor object of the given traversable object
that has the specified type.
|
static <T extends Traversable> |
Tools.getDescendentsOfType(Traversable t,
java.lang.Class<T> type)
Deprecated.
|
static <T extends Traversable> |
IRTools.getDescendentsOfType(Traversable t,
java.lang.Class<T> type)
Returns a list of descendents of the traversable object
t with the
specified type type. |
<T extends Traversable> |
DepthFirstIterator.getList(java.lang.Class<T> c)
Returns a linked list of objects of Class c in the IR
|
<T extends Traversable> |
DepthFirstIterator.getSet(java.lang.Class<T> c)
Returns a set of objects of Class c in the IR
|
| Modifier and Type | Method and Description |
|---|---|
Traversable |
Traversable.getParent()
Provides access to the parent of this object.
|
Traversable |
TranslationUnit.getParent() |
Traversable |
Statement.getParent() |
Traversable |
Program.getParent() |
Traversable |
Initializer.getParent() |
Traversable |
Expression.getParent() |
Traversable |
Declarator.getParent() |
Traversable |
Declaration.getParent() |
| Modifier and Type | Method and Description |
|---|---|
java.util.List<Traversable> |
Traversable.getChildren()
Provides access to the children of this object as a list.
|
java.util.List<Traversable> |
TranslationUnit.getChildren() |
java.util.List<Traversable> |
Statement.getChildren() |
java.util.List<Traversable> |
Program.getChildren() |
java.util.List<Traversable> |
Initializer.getChildren() |
java.util.List<Traversable> |
Expression.getChildren() |
java.util.List<Traversable> |
Declarator.getChildren() |
java.util.List<Traversable> |
Declaration.getChildren() |
java.util.List<Traversable> |
CompoundLiteral.getLiterals() |
| Modifier and Type | Method and Description |
|---|---|
void |
FlatIterator.add(Traversable t)
Adds an object after the last object that was returned
by next or previous.
|
static boolean |
Tools.checkConsistency(Traversable t)
Deprecated.
|
static boolean |
IRTools.checkConsistency(Traversable t)
Checks the consistency of the IR subtree rooted at
t. |
static <T extends PragmaAnnotation> |
Tools.collectPragmas(Traversable t,
java.lang.Class<T> pragma_cls,
java.lang.String key)
Deprecated.
|
static <T extends PragmaAnnotation> |
IRTools.collectPragmas(Traversable t,
java.lang.Class<T> pragma_cls,
java.lang.String key)
Returns a list of pragma annotations that contain the specified string
keys and are attached to annotatable objects within the traversable object
t. |
static boolean |
Tools.containsBinary(Traversable t,
BinaryOperator op)
Deprecated.
|
static boolean |
IRTools.containsBinary(Traversable t,
BinaryOperator op)
Checks if the traversable object contains the specified type of binary
operations.
|
static boolean |
Tools.containsClass(Traversable t,
java.lang.Class<? extends Traversable> type)
Deprecated.
|
static boolean |
IRTools.containsClass(Traversable t,
java.lang.Class<? extends Traversable> type)
Checks if the traversable object contains the specified type of object.
|
static boolean |
Tools.containsClasses(Traversable t,
java.util.Set<java.lang.Class<? extends Traversable>> types)
Deprecated.
|
static boolean |
IRTools.containsClasses(Traversable t,
java.util.Set<java.lang.Class<? extends Traversable>> types)
Checks if the traversable object contains the specified types of object.
|
static boolean |
Tools.containsExpression(Traversable t,
Expression e)
Deprecated.
|
static boolean |
IRTools.containsExpression(Traversable t,
Expression e)
Searches the IR tree beginning at
t for the Expression e. |
static boolean |
Tools.containsExpressions(Traversable t,
java.util.Collection<? extends Expression> es)
Deprecated.
|
static boolean |
IRTools.containsExpressions(Traversable t,
java.util.Collection<? extends Expression> es)
Searches the IR tree beginning at
t for any expressions in the
given collection of expressions. |
static boolean |
Tools.containsFunctionCall(Traversable t)
Deprecated.
|
static boolean |
IRTools.containsFunctionCall(Traversable t)
Returns true if there is a FunctionCall within the traversable.
|
static boolean |
Tools.containsSideEffect(Traversable t)
Deprecated.
|
static boolean |
IRTools.containsSideEffect(Traversable t)
Returns true if the traversable contains any side effects that change the
program state.
|
static boolean |
Tools.containsSymbol(Traversable t,
Symbol var)
Deprecated.
|
static boolean |
IRTools.containsSymbol(Traversable t,
Symbol var)
Checks if the specified traversable object contains any identifier
derived from the given symbol
var. |
static boolean |
Tools.containsSymbols(Traversable t,
java.util.Set<Symbol> vars)
Deprecated.
|
static boolean |
IRTools.containsSymbols(Traversable t,
java.util.Set<Symbol> vars)
Checks if the specified traversable object contains any identifier
derived from the given set of symbols
vars. |
static boolean |
Tools.containsUnary(Traversable t,
UnaryOperator op)
Deprecated.
|
static boolean |
IRTools.containsUnary(Traversable t,
UnaryOperator op)
Checks if the traversable object contains the specified type of unary
operations.
|
static int |
Tools.countExpressions(Traversable t,
Expression e)
Deprecated.
|
static int |
IRTools.countExpressions(Traversable t,
Expression e)
Counts the number of times that the Expression
e appears in
the IR tree t. |
static Expression |
Tools.findExpression(Traversable t,
Expression e)
Deprecated.
|
static Expression |
IRTools.findExpression(Traversable t,
Expression e)
Finds the first instance of the Expression
e in the IR tree
t. |
static java.util.List<Expression> |
IRTools.findExpressions(Traversable t,
Expression e)
Finds the list of instances of the Expression
e in the IR tree
t. |
static java.util.Set<Symbol> |
Tools.getAccessedSymbols(Traversable t)
Deprecated.
|
static java.util.Set<Symbol> |
SymbolTools.getAccessedSymbols(Traversable t)
Returns the set of symbols accessed in the traversable object.
|
static <T extends Traversable> |
Tools.getAncestorOfType(Traversable t,
java.lang.Class<T> type)
Deprecated.
|
static <T extends Traversable> |
IRTools.getAncestorOfType(Traversable t,
java.lang.Class<T> type)
Returns the nearest ancestor object of the given traversable object
that has the specified type.
|
static Identifier |
Tools.getArrayTemp(Traversable where,
java.util.List specs,
ArraySpecifier aspec,
java.lang.String name)
Deprecated.
|
static Identifier |
SymbolTools.getArrayTemp(Traversable where,
java.util.List specs,
ArraySpecifier aspec,
java.lang.String name)
Returns a new identifier derived from the given IR object, type list,
array specifier and name.
|
static Identifier |
Tools.getArrayTemp(Traversable where,
java.util.List specs,
java.util.List aspecs,
java.lang.String name)
Deprecated.
|
static Identifier |
SymbolTools.getArrayTemp(Traversable where,
java.util.List specs,
java.util.List aspecs,
java.lang.String name)
Returns a new identifier derived from the given IR object, type list,
array specifiers and name.
|
static ClassDeclaration |
SymbolTools.getClassDeclaration(Symbol symbol,
Traversable tr)
Returns the user-defined class declaration for the given symbol.
|
static java.util.List<Expression> |
Tools.getDefList(Traversable t)
Deprecated.
|
static java.util.List<Expression> |
DataFlowTools.getDefList(Traversable t)
Returns a list of defined expressions in the traversable object.
|
static java.util.Map<Expression,java.util.Set<java.lang.Integer>> |
Tools.getDefMap(Traversable t)
Deprecated.
|
static java.util.Map<Expression,java.util.Set<java.lang.Integer>> |
DataFlowTools.getDefMap(Traversable t)
Returns a set of defined expressions in the traversable object.
|
static Section.MAP |
Tools.getDefSectionMap(Traversable t,
java.util.Map range_map,
RangeDomain unioned_rd,
java.util.Set<Symbol> def_vars)
Deprecated.
|
static Section.MAP |
DataFlowTools.getDefSectionMap(Traversable t,
java.util.Map range_map,
RangeDomain unioned_rd,
java.util.Set<Symbol> def_vars)
Returns a set of defined Section expressions in the traversable object.
|
static java.util.Set<Expression> |
Tools.getDefSet(Traversable t)
Deprecated.
|
static java.util.Set<Expression> |
DataFlowTools.getDefSet(Traversable t)
Returns a set of defined expressions in the traversable object.
|
static java.util.Set<Symbol> |
Tools.getDefSymbol(Traversable t)
Deprecated.
|
static java.util.Set<Symbol> |
DataFlowTools.getDefSymbol(Traversable t)
Returns a set of defined symbols from the traversable object.
|
static java.util.Map<Symbol,java.util.Set<java.lang.Integer>> |
Tools.getDefSymbolMap(Traversable t)
Deprecated.
|
static java.util.Map<Symbol,java.util.Set<java.lang.Integer>> |
DataFlowTools.getDefSymbolMap(Traversable t) |
static <T extends Traversable> |
Tools.getDescendentsOfType(Traversable t,
java.lang.Class<T> type)
Deprecated.
|
static <T extends Traversable> |
IRTools.getDescendentsOfType(Traversable t,
java.lang.Class<T> type)
Returns a list of descendents of the traversable object
t with the
specified type type. |
static <T extends Expression> |
Tools.getExpressionOfType(Traversable t,
java.lang.Class<T> type)
Deprecated.
|
static <T extends Expression> |
IRTools.getExpressionsOfType(Traversable t,
java.lang.Class<T> type)
Returns a list of expressions having the specified type in the given
traversable object.
|
static Statement |
Tools.getFirstNonDeclarationStatement(Traversable t)
Deprecated.
|
static Statement |
IRTools.getFirstNonDeclarationStatement(Traversable t)
Returns the first non-DeclarationStatement of the given traverable object.
|
static java.util.List<FunctionCall> |
Tools.getFunctionCalls(Traversable t)
Deprecated.
|
static java.util.List<FunctionCall> |
IRTools.getFunctionCalls(Traversable t)
Returns a list of FunctionCall expressions within the traversable object.
|
static java.util.Set<Symbol> |
Tools.getGlobalSymbols(Traversable t)
Deprecated.
|
static java.util.Set<Symbol> |
SymbolTools.getGlobalSymbols(Traversable t)
Returns the set of Symbol objects that are global variables
of the File scope
|
static Declaration |
Tools.getLastDeclaration(Traversable t)
Deprecated.
|
static Declaration |
IRTools.getLastDeclaration(Traversable t)
Returns the last declaration that belongs to the given traverable object.
|
static DeclarationStatement |
Tools.getLastDeclarationStatement(Traversable t)
Deprecated.
|
static DeclarationStatement |
IRTools.getLastDeclarationStatement(Traversable t)
Returns the last declaration statement that belongs to the given
traverable object.
|
static java.util.Set<Symbol> |
Tools.getLocalSymbols(Traversable t)
Deprecated.
|
static java.util.Set<Symbol> |
SymbolTools.getLocalSymbols(Traversable t)
Returns the set of symbols declared within the specified traversable
object.
|
static java.util.List |
SymbolTools.getNativeSpecifiers(Traversable t,
Symbol symbol)
Returns C-native specifiers for the given symbol.
|
static NameID |
SymbolTools.getNewName(java.lang.String name,
Traversable tr)
Returns a new name id with the given name suggestion and scope.
|
static Procedure |
Tools.getParentProcedure(Traversable t)
Deprecated.
|
static Procedure |
IRTools.getParentProcedure(Traversable t)
Returns the Procedure to which the input traversable
object belongs.
|
static TranslationUnit |
Tools.getParentTranslationUnit(Traversable t)
Deprecated.
|
static TranslationUnit |
IRTools.getParentTranslationUnit(Traversable t)
Returns the TranslationUnit to which the input traversable
object belongs.
|
static Identifier |
Tools.getPointerTemp(Traversable where,
Identifier refID)
Deprecated.
|
static Identifier |
SymbolTools.getPointerTemp(Traversable where,
Identifier refID)
Returns a new, pointer-type identifier derived from the given IR object.
|
static Identifier |
Tools.getPointerTemp(Traversable where,
java.util.List specs,
java.util.List pspecs,
java.lang.String name)
Deprecated.
|
static Identifier |
SymbolTools.getPointerTemp(Traversable where,
java.util.List specs,
java.util.List pspecs,
java.lang.String name)
Returns a new, pointer-type identifier derived from the given IR object.
|
static Identifier |
Tools.getPointerTemp(Traversable where,
java.util.List specs,
java.lang.String name)
Deprecated.
|
static Identifier |
SymbolTools.getPointerTemp(Traversable where,
java.util.List specs,
java.lang.String name)
Returns a new, pointer-type identifier derived from the given IR object.
|
static <T extends Statement> |
Tools.getStatementsOfType(Traversable t,
java.lang.Class<T> type)
Deprecated.
|
static <T extends Statement> |
IRTools.getStatementsOfType(Traversable t,
java.lang.Class<T> type)
Returns a list of statements having the specified type in the given
traversable object.
|
static Symbol |
Tools.getSymbolOfName(java.lang.String name,
Traversable tr)
Deprecated.
|
static Symbol |
SymbolTools.getSymbolOfName(java.lang.String name,
Traversable tr)
Returns the symbol object having the specified string name.
|
static Identifier |
Tools.getTemp(Traversable where,
Identifier id)
Deprecated.
|
static Identifier |
SymbolTools.getTemp(Traversable where,
Identifier id)
Returns a new identifier derived from the given IR object and identifier.
|
static Identifier |
Tools.getTemp(Traversable where,
java.util.List specs,
java.lang.String name)
Deprecated.
|
static Identifier |
SymbolTools.getTemp(Traversable where,
java.util.List specs,
java.lang.String name)
Returns a new identifier derived from the given IR object, type list, and
name.
|
static Identifier |
Tools.getTemp(Traversable where,
Specifier spec,
java.lang.String name)
Deprecated.
|
static Identifier |
SymbolTools.getTemp(Traversable where,
Specifier spec,
java.lang.String name)
Returns a new identifier derived from the given IR object, type, and name.
|
static java.util.List<UnaryExpression> |
Tools.getUnaryExpression(Traversable t,
UnaryOperator op)
Deprecated.
|
static java.util.List<UnaryExpression> |
IRTools.getUnaryExpression(Traversable t,
UnaryOperator op)
Returns a list of unary expressions with the given unary operator.
|
static java.util.List<Expression> |
DataFlowTools.getUseList(Traversable t) |
static java.util.Map<Expression,java.util.Set<java.lang.Integer>> |
Tools.getUseMap(Traversable t)
Deprecated.
|
static java.util.Map<Expression,java.util.Set<java.lang.Integer>> |
DataFlowTools.getUseMap(Traversable t)
Returns a set of used expressions with their unique hashcodes in the
traversable object.
|
static java.util.Set<Expression> |
Tools.getUseSet(Traversable t)
Deprecated.
|
static java.util.Set<Expression> |
DataFlowTools.getUseSet(Traversable t)
Returns a set of used expressions in the traversable object.
|
static java.util.Set<Symbol> |
Tools.getUseSymbol(Traversable t)
Deprecated.
|
static java.util.Set<Symbol> |
DataFlowTools.getUseSymbol(Traversable t)
Returns a set of used symbols from the traversable object.
|
static java.util.Map<Symbol,java.util.Set<java.lang.Integer>> |
Tools.getUseSymbolMap(Traversable t)
Deprecated.
|
static java.util.Map<Symbol,java.util.Set<java.lang.Integer>> |
DataFlowTools.getUseSymbolMap(Traversable t) |
static boolean |
Tools.isAncestorOf(Traversable anc,
Traversable des)
Deprecated.
|
static boolean |
IRTools.isAncestorOf(Traversable anc,
Traversable des)
Checks if the specified traversable object
anc is an ancestor of
the other traversable object des in the IR tree. |
static boolean |
Tools.isDescendantOf(Traversable des,
Traversable anc)
Deprecated.
|
static boolean |
IRTools.isDescendantOf(Traversable des,
Traversable anc)
Checks if the specified traversable object
des is a descendant of
the other traversable object anc in the IR tree. |
static boolean |
Tools.isGlobal(Symbol symbol,
Traversable t)
Deprecated.
|
static boolean |
SymbolTools.isGlobal(Symbol symbol,
Traversable t)
Checks if the symbol is a global variable to the procedure containing the
given traversable object.
|
static boolean |
SymbolTools.isStruct(Symbol symbol,
Traversable tr)
Checks if the given symbol is a user-defined struct type.
|
static void |
SymbolTools.linkSymbol(Traversable t)
Makes links from all
IDExpression objects in the program to
their corresponding declarators while generating warnings if there is
any undeclared variables or functions. |
static void |
Tools.removeAnnotations(Traversable t,
java.lang.Class<? extends Annotation> type)
Deprecated.
|
static void |
IRTools.removeAnnotations(Traversable t,
java.lang.Class<? extends Annotation> type)
Removes all annotations with the specified type from the given traversable
object.
|
void |
Traversable.removeChild(Traversable child)
Removes the specified child.
|
void |
TranslationUnit.removeChild(Traversable child) |
void |
Statement.removeChild(Traversable child)
Removes a specific child of this statement;
some statements do not support this method.
|
void |
Program.removeChild(Traversable child) |
void |
Initializer.removeChild(Traversable child) |
void |
Expression.removeChild(Traversable child)
This operation is not allowed.
|
void |
Declarator.removeChild(Traversable child)
This traversable interface is not supported for declarators.
|
void |
Declaration.removeChild(Traversable child)
This operation is not allowed.
|
void |
CompoundStatement.removeChild(Traversable child)
Removes the specified child object if it exists.
|
void |
ClassDeclaration.removeChild(Traversable child) |
static void |
PrintTools.removeVerboseParens(Traversable t)
Removes unnecessary parentheses from the given traversable object.
|
static void |
Tools.replaceAll(Traversable t,
Expression x,
Expression y)
Deprecated.
|
static void |
IRTools.replaceAll(Traversable t,
Expression x,
Expression y)
Replaces all instances of expression x on the IR tree
beneath t by clones of expression y.
|
static void |
Tools.replaceSymbolIn(Traversable t,
Symbol var,
Expression e)
Deprecated.
|
static void |
IRTools.replaceSymbolIn(Traversable t,
Symbol var,
Expression e)
Replaces all occurrences of the specified variable
var with the
given expression e in the traversable object t in place. |
void |
Traversable.setChild(int index,
Traversable t)
Sets the indexth child of this object to t.
|
void |
TranslationUnit.setChild(int index,
Traversable t) |
void |
Statement.setChild(int index,
Traversable t) |
void |
Program.setChild(int index,
Traversable t) |
void |
PreAnnotation.setChild(int index,
Traversable t)
Unsupported - this object has no children.
|
void |
Initializer.setChild(int index,
Traversable t) |
void |
Expression.setChild(int index,
Traversable t) |
void |
Declarator.setChild(int index,
Traversable t)
This traversable interface is not supported for declarators.
|
void |
Declaration.setChild(int index,
Traversable t) |
void |
AccessLevel.setChild(int index,
Traversable t)
Deprecated.
Unsupported - this object has no children.
|
void |
Traversable.setParent(Traversable t)
Sets the parent of this object.
|
void |
TranslationUnit.setParent(Traversable t)
Sets the parent program for this translation unit.
|
void |
Statement.setParent(Traversable t) |
void |
Program.setParent(Traversable t)
Unsupported - the parent of a program is null and may not be changed.
|
void |
Initializer.setParent(Traversable t) |
void |
Expression.setParent(Traversable t) |
void |
Declarator.setParent(Traversable t) |
void |
Declaration.setParent(Traversable t) |
void |
AccessLevel.setParent(Traversable t)
Deprecated.
|
static void |
Symbolic.simplifyWithin(Traversable t) |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
Tools.containsClass(Traversable t,
java.lang.Class<? extends Traversable> type)
Deprecated.
|
static boolean |
IRTools.containsClass(Traversable t,
java.lang.Class<? extends Traversable> type)
Checks if the traversable object contains the specified type of object.
|
static boolean |
Tools.containsClasses(Traversable t,
java.util.Set<java.lang.Class<? extends Traversable>> types)
Deprecated.
|
static boolean |
IRTools.containsClasses(Traversable t,
java.util.Set<java.lang.Class<? extends Traversable>> types)
Checks if the traversable object contains the specified types of object.
|
java.util.List |
FlatIterator.getList(java.lang.Class<? extends Traversable> c)
Returns a linked list of objects of Class c in the IR
|
java.util.LinkedList |
BreadthFirstIterator.getList(java.lang.Class<? extends Traversable> c)
Returns a linked list of objects of Class c in the IR
|
java.util.Set |
FlatIterator.getSet(java.lang.Class<? extends Traversable> c)
Returns a set of objects of Class c in the IR
|
java.util.Set |
BreadthFirstIterator.getSet(java.lang.Class<? extends Traversable> c)
Returns a set of objects of Class c in the IR
|
E |
IRIterator.next(java.lang.Class<? extends Traversable> c)
Returns the next element in the iteration that is an instance of a
certain class.
|
void |
PostOrderIterator.pruneOn(java.lang.Class<? extends Traversable> c)
Disables traversal from an object having the specified type.
|
void |
DFIterator.pruneOn(java.lang.Class<? extends Traversable> c)
Considers the specified IR class type as one whose child nodes are not
visited during iteration.
|
void |
BreadthFirstIterator.pruneOn(java.lang.Class<? extends Traversable> c)
Disables traversal from an object having the specified type.
|
| Constructor and Description |
|---|
BreadthFirstIterator(Traversable init)
Creates a new iterator with the specified initial object and the
optional list of pruned types.
|
DepthFirstIterator(Traversable init)
Creates a new iterator with the specified initial traversable object and
the optional pruned types.
|
DFIterator(Traversable root)
Constructs a new iterator that returns any traversable nodes during
iteration.
|
DFIterator(Traversable root,
java.lang.Class<? extends Traversable> c)
Constructs a new iterator that returns the specified IR type during
iteration.
|
FlatIterator(Traversable parent)
Creates a new iterator with the specified traversable object.
|
PostOrderIterator(Traversable root)
Creates a new iterator with the specified root object.
|
PostOrderIterator(Traversable root,
java.lang.Class<? extends Traversable>[] pruned_on)
Creates a new iterator with the specified root object and the array of
classes that needs to be pruned on.
|
| Constructor and Description |
|---|
DFIterator(Traversable root,
java.lang.Class<? extends Traversable> c)
Constructs a new iterator that returns the specified IR type during
iteration.
|
LinkageSpecification(java.lang.String s,
java.util.List<Traversable> decl_list)
Represents extern "s" { decl_list }.
|
SomeExpression(java.lang.String code,
java.util.List<Traversable> children)
Constructs some unknown expression having the specified raw code and the
given list of children.
|