4#ifndef ASTRESTRUCTURE_H 
    5#define ASTRESTRUCTURE_H 
    7#include "roseInternal.h" 
   39          std::string unparseReplacement;
 
   40          std::vector< std::pair<std::string,RelativePositionType> > stringList;
 
   42          AstUnparseAttribute(std::string s, RelativePositionType inputlocation )
 
   43             : location(inputlocation), unparseReplacement(s)
 
   46               stringList.push_back(std::pair<std::string,RelativePositionType>(s,inputlocation));
 
   48          virtual std::string 
toString() { 
return unparseReplacement; }
 
   84          void immediateReplace(
SgStatement* astNode,std::string s);
 
   90  static void unparserReplace(
SgExpression* astNode, std::string s); 
 
   93  void delayedReplace(
SgNode* astNode,std::string s);
 
   94  void lock(
SgNode* astNode); 
 
   95  void unlock(
SgNode* astNode);  
 
  102  std::string sourceFragment;
 
  103  std::string includeHeaders; 
 
  105  typedef std::set<SgNode*> Lock;
 
  107  typedef std::map<SgNode*,std::string> Schedule;
 
  108  typedef Schedule::value_type SchedulePair;
 
  109  Schedule scheduledReplacements;
 
 
Base class for all IR node attribute values.
 
virtual std::string toString()
Convert an attribute to a string.
 
This class represents the notion of an expression. Expressions are derived from SgLocatedNodes,...
 
This class represents the base class for all IR nodes within Sage III.
 
This class represents a source project, with a list of SgFile objects and global information about th...
 
This class represents the notion of a statement.
 
const char * RelativePositionType(int64_t)
Convert AstUnparseAttribute::RelativePositionType enum constant to a string.