Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

SH::ShVarTransformMap Class Reference

Keeps a (potentially composite) mapping from new variables (ex. More...

#include <ShInternals.hpp>

List of all members.

Public Member Functions

 ShVarTransformMap ()
 ShVarTransformMap (const ShVarTransformMap &m)
ShVarTransformMapoperator= (const ShVarTransformMap &m)
void clear ()
 Clear the map out.
void add_variable_transform (ShVariableNodePtr origVar, ShVariableNodePtr newVar)
 Indicate that we are creating a new transformed variable derived from the given original variable.
ShVariableNodePtr get_original_variable (ShVariableNodePtr newVar) const
 Get the original variable (ALL the way back) that gave rise to the given transformed variable.


Detailed Description

Keeps a (potentially composite) mapping from new variables (ex.

when compiling) to the originals and supports querying for the original variable from which the given "transformed" variable was derived.

Definition at line 62 of file ShInternals.hpp.


Member Function Documentation

void SH::ShVarTransformMap::add_variable_transform ShVariableNodePtr  origVar,
ShVariableNodePtr  newVar
 

Indicate that we are creating a new transformed variable derived from the given original variable.

If the original variable is already in the map, the mapping from new to old will follow the chain all the way back.

Definition at line 81 of file ShInternals.cpp.

Referenced by SH::InputOutputConvertor::updateGraph().

ShVariableNodePtr SH::ShVarTransformMap::get_original_variable ShVariableNodePtr  newVar  )  const [inline]
 

Get the original variable (ALL the way back) that gave rise to the given transformed variable.

If a mapping is not found for the given variable, the variable itself is return (ie. it has not been transformed at all).

Definition at line 89 of file ShInternals.hpp.


The documentation for this class was generated from the following files:
Generated on Thu Jul 28 17:35:56 2005 for Sh by  doxygen 1.4.3-20050530