ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CreateSlice Class Reference

#include <CreateSlice.h>

Inheritance diagram for CreateSlice:
Collaboration diagram for CreateSlice:

Public Member Functions

 CreateSlice (std::set< SgNode * >saveNodes)
 
bool traverse (SgNode *node)
 
- Public Member Functions inherited from AstTopDownBottomUpProcessing< BooleanSafeKeeper, BooleanSafeKeeper >
BooleanSafeKeeper traverse (SgNode *node, BooleanSafeKeeperinheritedValue)
 evaluates attributes on the entire AST More...
 
BooleanSafeKeeper traverseWithinFile (SgNode *node, BooleanSafeKeeperinheritedValue)
 evaluates attributes only at nodes which represent the same file as where the evaluation was started More...
 
- Public Member Functions inherited from SgTreeTraversal< BooleanSafeKeeper, BooleanSafeKeeper >
BooleanSafeKeeper traverse (SgNode *basenode, BooleanSafeKeeperinheritedValue, t_traverseOrder travOrder=preandpostorder)
 
BooleanSafeKeeper traverseWithinFile (SgNode *basenode, BooleanSafeKeeperinheritedValue, t_traverseOrder travOrder=preandpostorder)
 
void traverseInputFiles (SgProject *projectNode, BooleanSafeKeeperinheritedValue, t_traverseOrder travOrder=preandpostorder)
 
virtual ~SgTreeTraversal ()
 
 SgTreeTraversal ()
 
 SgTreeTraversal (const SgTreeTraversal &)
 
const SgTreeTraversaloperator= (const SgTreeTraversal &)
 

Protected Member Functions

virtual BooleanSafeKeeper evaluateInheritedAttribute (SgNode *node, BooleanSafeKeeper partOfSlice)
 pure virtual function which must be implemented to compute the inherited attribute at a node More...
 
virtual BooleanSafeKeeper evaluateSynthesizedAttribute (SgNode *node, BooleanSafeKeeper inherited, SubTreeSynthesizedAttributes atts)
 pure virtual function which must be implemented to compute the synthesized attribute at a node. More...
 
BooleanSafeKeeper defaultSynthesizedAttribute (BooleanSafeKeeper inh)
 
- Protected Member Functions inherited from AstTopDownBottomUpProcessing< BooleanSafeKeeper, BooleanSafeKeeper >
virtual void atTraversalStart ()
 Function called at the start of the traversal, before any node is visited; override if necessary, the default implementation is a no-op. More...
 
virtual void atTraversalEnd ()
 
- Protected Member Functions inherited from SgTreeTraversal< BooleanSafeKeeper, BooleanSafeKeeper >
virtual void setNodeSuccessors (SgNode *node, SuccessorsContainer &succContainer)
 
void set_useDefaultIndexBasedTraversal (bool)
 

Protected Attributes

SgFilecurrentFile
 
std::stack< std::list< SgNode * > > delayedRemoveListStack
 

Private Attributes

std::set< SgNode * > _toSave
 

Additional Inherited Members

- Public Types inherited from AstTopDownBottomUpProcessing< BooleanSafeKeeper, BooleanSafeKeeper >
typedef SgTreeTraversal
< BooleanSafeKeeper,
BooleanSafeKeeper >
::SynthesizedAttributesList 
SynthesizedAttributesList
 
typedef SynthesizedAttributesList SubTreeSynthesizedAttributes
 
- Protected Types inherited from SgTreeTraversal< BooleanSafeKeeper, BooleanSafeKeeper >
typedef
AstSuccessorsSelectors::SuccessorsContainer 
SuccessorsContainer
 
typedef SuccessorsContainerSuccessorsContainerRef
 

Detailed Description

Definition at line 28 of file CreateSlice.h.

Constructor & Destructor Documentation

CreateSlice::CreateSlice ( std::set< SgNode * >  saveNodes)
inline

Definition at line 33 of file CreateSlice.h.

Member Function Documentation

bool CreateSlice::traverse ( SgNode node)
inline

Definition at line 38 of file CreateSlice.h.

virtual BooleanSafeKeeper CreateSlice::evaluateInheritedAttribute ( SgNode astNode,
BooleanSafeKeeper  inheritedValue 
)
protectedvirtual

pure virtual function which must be implemented to compute the inherited attribute at a node

Implements AstTopDownBottomUpProcessing< BooleanSafeKeeper, BooleanSafeKeeper >.

virtual BooleanSafeKeeper CreateSlice::evaluateSynthesizedAttribute ( SgNode ,
BooleanSafeKeeper  ,
SubTreeSynthesizedAttributes   
)
protectedvirtual

pure virtual function which must be implemented to compute the synthesized attribute at a node.

The list of synthesized attributes consists of the synthesized attributes computed at the children node of the current node. The inherited attribute value is computed by evaluateInheritedAttribute at the same node and simply passed to this function. Use the typedef SynthesizedAttributeList as type for the synthesized attributes list.

Implements AstTopDownBottomUpProcessing< BooleanSafeKeeper, BooleanSafeKeeper >.

BooleanSafeKeeper CreateSlice::defaultSynthesizedAttribute ( BooleanSafeKeeper  inh)
inlineprotectedvirtual

Reimplemented from SgTreeTraversal< BooleanSafeKeeper, BooleanSafeKeeper >.

Definition at line 51 of file CreateSlice.h.

Member Data Documentation

SgFile* CreateSlice::currentFile
protected

Definition at line 45 of file CreateSlice.h.

std::stack<std::list<SgNode *> > CreateSlice::delayedRemoveListStack
protected

Definition at line 56 of file CreateSlice.h.

std::set< SgNode * > CreateSlice::_toSave
private

Definition at line 67 of file CreateSlice.h.


The documentation for this class was generated from the following file: