ROSE
0.9.6a
|
Class to traverse the AST and assign unique names to every varRef. More...
Public Member Functions | |
UniqueNameTraversal (VariableRenaming *varRenaming, const std::vector< SgInitializedName * > &allNames) | |
virtual VariableRenaming::VarRefSynthAttr | evaluateSynthesizedAttribute (SgNode *node, SynthesizedAttributesList attrs) |
Called to evaluate the synthesized attribute on every node. More... | |
Public Member Functions inherited from AstBottomUpProcessing< VariableRenaming::VarRefSynthAttr > | |
VariableRenaming::VarRefSynthAttr | traverse (SgNode *node) |
evaluates attributes on the entire AST More... | |
VariableRenaming::VarRefSynthAttr | traverseWithinFile (SgNode *node) |
evaluates attributes only at nodes which represent the same file as where the evaluation was started More... | |
void | traverseInputFiles (SgProject *projectNode) |
evaluates attributes only at nodes which represent files which were specified on the command line (=input files). More... | |
Public Member Functions inherited from SgTreeTraversal< DummyAttribute, VariableRenaming::VarRefSynthAttr > | |
VariableRenaming::VarRefSynthAttr | traverse (SgNode *basenode, DummyAttributeinheritedValue, t_traverseOrder travOrder=preandpostorder) |
VariableRenaming::VarRefSynthAttr | traverseWithinFile (SgNode *basenode, DummyAttributeinheritedValue, t_traverseOrder travOrder=preandpostorder) |
void | traverseInputFiles (SgProject *projectNode, DummyAttributeinheritedValue, t_traverseOrder travOrder=preandpostorder) |
virtual | ~SgTreeTraversal () |
SgTreeTraversal () | |
SgTreeTraversal (const SgTreeTraversal &) | |
const SgTreeTraversal & | operator= (const SgTreeTraversal &) |
Private Member Functions | |
SgInitializedName * | resolveTemporaryInitNames (SgInitializedName *name) |
Finds initialized names that are "fake" (refer to p_prev_decl_item in the SgInitializedName docs) and replaces them with the true declaration. More... | |
Private Attributes | |
VariableRenaming * | varRename |
std::vector< SgInitializedName * > | allInitNames |
All the initialized names in the project. More... | |
Class to traverse the AST and assign unique names to every varRef.
Definition at line 902 of file VariableRenaming.h.
|
inline |
Definition at line 914 of file VariableRenaming.h.
|
private |
Finds initialized names that are "fake" (refer to p_prev_decl_item in the SgInitializedName docs) and replaces them with the true declaration.
|
virtual |
Called to evaluate the synthesized attribute on every node.
This function will handle passing all variables that are referenced by a given expression.
node | The node being evaluated. |
attrs | The attributes from the child nodes. |
Implements AstBottomUpProcessing< VariableRenaming::VarRefSynthAttr >.
|
private |
Definition at line 904 of file VariableRenaming.h.
|
private |
All the initialized names in the project.
Definition at line 907 of file VariableRenaming.h.