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

#include <attach_all_info.h>

Inheritance diagram for AttachAllPreprocessingInfoTreeTrav:
Collaboration diagram for AttachAllPreprocessingInfoTreeTrav:

Public Member Functions

 AttachAllPreprocessingInfoTreeTrav (SgFile *sagep)
 
AttachPreprocessingInfoTreeTraversalInheritedAttrribute evaluateInheritedAttribute (SgNode *n, AttachPreprocessingInfoTreeTraversalInheritedAttrribute inh)
 pure virtual function which must be implemented to compute the inherited attribute at a node More...
 
AttachPreprocessingInfoTreeTraversalSynthesizedAttribute evaluateSynthesizedAttribute (SgNode *n, AttachPreprocessingInfoTreeTraversalInheritedAttrribute inh, SubTreeSynthesizedAttributes st)
 pure virtual function which must be implemented to compute the synthesized attribute at a node. More...
 
void display (const std::string &label) const
 
- Public Member Functions inherited from AttachPreprocessingInfoTreeTrav
 AttachPreprocessingInfoTreeTrav (std::map< std::string, ROSEAttributesList * > *attrMap)
 
 ~AttachPreprocessingInfoTreeTrav ()
 
 AttachPreprocessingInfoTreeTrav (SgSourceFile *file, bool includeDirectivesAndCommentsFromAllFiles)
 
void setupPointerToPreviousNode (SgLocatedNode *currentLocNodePtr)
 
void iterateOverListAndInsertPreviouslyUninsertedElementsAppearingBeforeLineNumber (SgLocatedNode *locatedNode, int lineNumber, PreprocessingInfo::RelativePositionType location, bool reset_start_index, ROSEAttributesList *currentListOfAttributes)
 
AttachPreprocessingInfoTreeTraversalInheritedAttrribute evaluateInheritedAttribute (SgNode *n, AttachPreprocessingInfoTreeTraversalInheritedAttrribute inh)
 pure virtual function which must be implemented to compute the inherited attribute at a node More...
 
AttachPreprocessingInfoTreeTraversalSynthesizedAttribute evaluateSynthesizedAttribute (SgNode *n, AttachPreprocessingInfoTreeTraversalInheritedAttrribute inh, SubTreeSynthesizedAttributes st)
 pure virtual function which must be implemented to compute the synthesized attribute at a node. More...
 
void display (const std::string &label) const
 
AttributeMapTypeget_attributeMapForAllFiles ()
 
ROSEAttributesListgetListOfAttributes (int currentFileNameId)
 
void setMapOfAttributes ()
 
ROSEAttributesListbuildCommentAndCppDirectiveList (bool use_Wave, std::string currentFilename)
 

Private Member Functions

bool add_first_node_for_file (const int, SgNode *n, int pos)
 
std::pair< SgNode
*, PreprocessingInfo::RelativePositionType
get_first_node_for_file (const int fn, int hintfororder)
 

Private Attributes

std::string src_file_name
 
SgFilesage_file
 
std::map< int,
wrap_data_used_by_AttachPreprocessingInfoTreeTrav_t
map_of_all_attributes
 
int nFiles
 
std::map< int, int > map_of_file_order
 
std::vector< SgNode * > array_of_first_nodes
 
std::vector< std::string > pathsToExclude
 
bool lookForExcludePaths
 
std::vector< std::string > pathsToInclude
 
bool lookForIncludePaths
 
std::istream & dependancies
 

Additional Inherited Members

- Public Types inherited from AstTopDownBottomUpProcessing< AttachPreprocessingInfoTreeTraversalInheritedAttrribute, AttachPreprocessingInfoTreeTraversalSynthesizedAttribute >
typedef SgTreeTraversal
< AttachPreprocessingInfoTreeTraversalInheritedAttrribute,
AttachPreprocessingInfoTreeTraversalSynthesizedAttribute >
::SynthesizedAttributesList 
SynthesizedAttributesList
 
typedef SynthesizedAttributesList SubTreeSynthesizedAttributes
 
- Protected Types inherited from SgTreeTraversal< AttachPreprocessingInfoTreeTraversalInheritedAttrribute, AttachPreprocessingInfoTreeTraversalSynthesizedAttribute >
typedef
AstSuccessorsSelectors::SuccessorsContainer 
SuccessorsContainer
 
typedef SuccessorsContainerSuccessorsContainerRef
 
- Protected Member Functions inherited from AstTopDownBottomUpProcessing< AttachPreprocessingInfoTreeTraversalInheritedAttrribute, AttachPreprocessingInfoTreeTraversalSynthesizedAttribute >
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 Attributes inherited from AttachPreprocessingInfoTreeTrav
previousLocatedNodeInFileType previousLocatedNodeMap
 accumulator attribute More...
 
AttributeMapType attributeMapForAllFiles
 
SgSourceFilesourceFile
 current source file name id (only handle strings from current file) More...
 
bool use_Wave
 AS(011306) Map of ROSEAttributesLists mapped to filename from Wave. More...
 
StartingIndexAttributeMapType startIndexMap
 Map of filenames to list of attributes as found by WAVE. More...
 
bool processAllIncludeFiles
 

Detailed Description

Definition at line 27 of file attach_all_info.h.

Constructor & Destructor Documentation

AttachAllPreprocessingInfoTreeTrav::AttachAllPreprocessingInfoTreeTrav ( SgFile sagep)

Member Function Documentation

bool AttachAllPreprocessingInfoTreeTrav::add_first_node_for_file ( const int  ,
SgNode n,
int  pos 
)
private
std::pair<SgNode*, PreprocessingInfo::RelativePositionType> AttachAllPreprocessingInfoTreeTrav::get_first_node_for_file ( const int  fn,
int  hintfororder 
)
private
AttachPreprocessingInfoTreeTraversalInheritedAttrribute AttachAllPreprocessingInfoTreeTrav::evaluateInheritedAttribute ( SgNode astNode,
AttachPreprocessingInfoTreeTraversalInheritedAttrribute  inheritedValue 
)
virtual

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

Implements AstTopDownBottomUpProcessing< AttachPreprocessingInfoTreeTraversalInheritedAttrribute, AttachPreprocessingInfoTreeTraversalSynthesizedAttribute >.

AttachPreprocessingInfoTreeTraversalSynthesizedAttribute AttachAllPreprocessingInfoTreeTrav::evaluateSynthesizedAttribute ( SgNode ,
AttachPreprocessingInfoTreeTraversalInheritedAttrribute  ,
SubTreeSynthesizedAttributes   
)
virtual

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< AttachPreprocessingInfoTreeTraversalInheritedAttrribute, AttachPreprocessingInfoTreeTraversalSynthesizedAttribute >.

void AttachAllPreprocessingInfoTreeTrav::display ( const std::string &  label) const

Member Data Documentation

std::string AttachAllPreprocessingInfoTreeTrav::src_file_name
private

Definition at line 30 of file attach_all_info.h.

SgFile* AttachAllPreprocessingInfoTreeTrav::sage_file
private

Definition at line 31 of file attach_all_info.h.

std::map<int, wrap_data_used_by_AttachPreprocessingInfoTreeTrav_t> AttachAllPreprocessingInfoTreeTrav::map_of_all_attributes
private

Definition at line 34 of file attach_all_info.h.

int AttachAllPreprocessingInfoTreeTrav::nFiles
private

Definition at line 39 of file attach_all_info.h.

std::map<int, int> AttachAllPreprocessingInfoTreeTrav::map_of_file_order
private

Definition at line 40 of file attach_all_info.h.

std::vector<SgNode*> AttachAllPreprocessingInfoTreeTrav::array_of_first_nodes
private

Definition at line 42 of file attach_all_info.h.

std::vector<std::string> AttachAllPreprocessingInfoTreeTrav::pathsToExclude
private

Definition at line 49 of file attach_all_info.h.

bool AttachAllPreprocessingInfoTreeTrav::lookForExcludePaths
private

Definition at line 50 of file attach_all_info.h.

std::vector<std::string> AttachAllPreprocessingInfoTreeTrav::pathsToInclude
private

Definition at line 53 of file attach_all_info.h.

bool AttachAllPreprocessingInfoTreeTrav::lookForIncludePaths
private

Definition at line 54 of file attach_all_info.h.

std::istream& AttachAllPreprocessingInfoTreeTrav::dependancies
private

Definition at line 80 of file attach_all_info.h.


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