ROSE
0.9.6a
|
Class holding a unique name for a variable. More...
#include <uniqueNameTraversal.h>
Public Member Functions | |
VarUniqueName () | |
Constructs the attribute with an empty key. More... | |
VarUniqueName (SgInitializedName *thisNode) | |
Constructs the attribute with value thisNode. More... | |
VarUniqueName (const std::vector< SgInitializedName * > &prefix, SgInitializedName *thisNode) | |
Constructs the attribute using the prefix vector and thisNode. More... | |
VarUniqueName (const VarUniqueName &other) | |
Copy the attribute. More... | |
VarUniqueName * | copy () |
const std::vector < SgInitializedName * > & | getKey () |
Get a constant reference to the name. More... | |
void | setKey (const std::vector< SgInitializedName * > &newKey) |
Set the value of the name. More... | |
bool | getUsesThis () |
void | setUsesThis (bool uses) |
std::string | getNameString () |
Get the string representing this uniqueName. More... | |
Public Member Functions inherited from AstAttribute | |
AstAttribute () | |
virtual | ~AstAttribute () |
virtual std::string | toString () |
AstAttribute * | constructor () |
std::string | attribute_class_name () |
virtual int | packed_size () |
virtual char * | packed_data () |
virtual void | unpacked_data (int size, char *data) |
virtual std::string | additionalNodeOptions () |
virtual std::vector < AttributeEdgeInfo > | additionalEdgeInfo () |
virtual std::vector < AttributeNodeInfo > | additionalNodeInfo () |
virtual bool | commentOutNodeInGraph () |
Private Attributes | |
std::vector< SgInitializedName * > | key |
The vector of initializedNames that uniquely identifies this VarRef. More... | |
bool | usesThis |
Class holding a unique name for a variable.
Is attached to varRefs as a persistant attribute. This is used to assign absolute names to VarRefExp nodes during VariableRenaming.
Definition at line 11 of file uniqueNameTraversal.h.
|
inline |
Constructs the attribute with an empty key.
Definition at line 26 of file uniqueNameTraversal.h.
Referenced by copy().
|
inline |
Constructs the attribute with value thisNode.
The key will consist of only the current node.
thisNode | The node to use for the key. |
Definition at line 36 of file uniqueNameTraversal.h.
References key.
|
inline |
Constructs the attribute using the prefix vector and thisNode.
The key will first be copied from the prefix value, and then the thisNode value will be appended.
prefix | The prefix of the new name. |
thisNode | The node to append to the end of the new name. |
Definition at line 49 of file uniqueNameTraversal.h.
References key.
|
inline |
Copy the attribute.
other | The attribute to copy from. |
Definition at line 59 of file uniqueNameTraversal.h.
References key.
|
inlinevirtual |
Reimplemented from AstAttribute.
Definition at line 64 of file uniqueNameTraversal.h.
References VarUniqueName().
|
inline |
Get a constant reference to the name.
Definition at line 74 of file uniqueNameTraversal.h.
References key.
|
inline |
Set the value of the name.
newKey | The new name to use. |
Definition at line 83 of file uniqueNameTraversal.h.
References key.
|
inline |
Definition at line 88 of file uniqueNameTraversal.h.
References usesThis.
|
inline |
Definition at line 93 of file uniqueNameTraversal.h.
References usesThis.
|
inline |
Get the string representing this uniqueName.
Definition at line 102 of file uniqueNameTraversal.h.
|
private |
The vector of initializedNames that uniquely identifies this VarRef.
The node which this name is attached to should be the last in the list.
Definition at line 18 of file uniqueNameTraversal.h.
Referenced by getKey(), getNameString(), setKey(), and VarUniqueName().
|
private |
Definition at line 20 of file uniqueNameTraversal.h.
Referenced by getNameString(), getUsesThis(), and setUsesThis().