ROSE  0.11.52.0
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
SageInterface::DeferredTransformation Struct Reference

Description

Definition at line 1845 of file sageInterface.h.

Collaboration diagram for SageInterface::DeferredTransformation:
Collaboration graph
[legend]

Public Types

enum  TransformationKind {
  e_error,
  e_default,
  e_outliner,
  e_replaceStatement,
  e_removeStatement,
  e_replaceDefiningFunctionDeclarationWithFunctionPrototype,
  e_last
}
 
typedef std::set< SgClassDefinition * > ClassDefSet_t
 
typedef std::vector< SgFunctionDeclaration * > FuncDeclList_t
 
typedef std::vector< SgStatement * > IntervalType
 

Public Member Functions

ROSE_DLL_API DeferredTransformation (SgClassDefinition *class_definition, SgDeclarationStatement *target_class_member, SgDeclarationStatement *new_function_prototype)
 
ROSE_DLL_API DeferredTransformation (const DeferredTransformation &X)
 
ROSE_DLL_API ~DeferredTransformation (void)
 Copy constructor.
 
ROSE_DLL_API DeferredTransformationoperator= (const DeferredTransformation &X)
 Shallow; does not delete fields.
 
ROSE_DLL_API void display (std::string label) const
 

Static Public Member Functions

static ROSE_DLL_API DeferredTransformation replaceDefiningFunctionDeclarationWithFunctionPrototype (SgFunctionDeclaration *functionDeclaration)
 operator=()
 
static ROSE_DLL_API DeferredTransformation replaceStatement (SgStatement *oldStmt, SgStatement *newStmt, bool movePreprocessinInfo=false)
 
static ROSE_DLL_API std::string outputDeferredTransformationKind (const TransformationKind &kind)
 

Public Attributes

TransformationKind deferredTransformationKind
 
std::string transformationLabel
 
SgStatementstatementToRemove
 
SgStatementstatementToAdd
 
SgClassDefinitionclass_definition
 
SgDeclarationStatementtarget_class_member
 
SgDeclarationStatementnew_function_prototype
 
ClassDefSet_t targetClasses
 
FuncDeclList_t targetFriends
 
IntervalType statementInterval
 
SgStatementlocationToOverwriteWithTransformation
 
SgStatementtransformationToOverwriteFirstStatementInInterval
 
SgBasicBlockblockOfStatementsToOutline
 

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