Class AstInterfaceImpl#
Defined in File AstInterface_ROSE.h
Inheritance Relationships#
Base Type#
public ObserveObject< AstObserver >(Template Class ObserveObject)
Class Documentation#
-
class AstInterfaceImpl : public ObserveObject<AstObserver>#
Public Types
-
typedef AstInterface::AstNodeList AstNodeList#
-
typedef AstInterface::AstTypeList AstTypeList#
Public Functions
-
inline AstInterfaceImpl(SgNode *_top)#
-
inline ~AstInterfaceImpl()#
-
inline SgNode *get_top() const#
-
void set_top(SgNode *_top)#
-
SgClassSymbol *LookupClass(const char *start)#
-
SgClassSymbol *GetClass(const std::string &name, const char **start = 0)#
-
SgVarRefExp *CreateFieldRef(std::string classname, std::string fieldname)#
-
SgMemberFunctionRefExp *CreateMethodRef(std::string classname, std::string fieldname, bool createIfNotFound)#
-
SgFunctionSymbol *LookupFunction(const char *start) const#
-
SgSymbol *CreateDeclarationStmts(const std::string &_decl)#
-
SgClassSymbol *NewClass(const std::string &name)#
-
SgClassSymbol *AddClass(SgClassDeclaration *d)#
-
SgFunctionSymbol *GetFunc(const std::string &name)#
-
SgFunctionSymbol *NewFunc(const std::string &name, SgType *rtype, const std::list<SgInitializedName*> &args)#
-
SgFunctionSymbol *AddFunc(SgFunctionDeclaration *d)#
-
SgNode *CreateFunction(std::string name, int numOfPars)#
-
SgNode *CreateFunctionCall(SgNode *func, AstNodeList::const_iterator, AstNodeList::const_iterator e)#
-
bool IsFunctionCall(SgNode *s, SgNode **func, AstNodeList *args)#
-
SgMemberFunctionSymbol *NewMemberFunc(SgClassSymbol *decl, const std::string &name, SgType *rtype, const std::list<SgInitializedName*> &args)#
-
SgMemberFunctionSymbol *AddMemberFunc(SgClassDefinition *def, SgMemberFunctionDeclaration *d)#
-
SgMemberFunctionSymbol *GetMemberFunc(SgClassSymbol *c, const std::string &funcname, std::vector<SgExpression*> *args = 0)#
-
SgVariableSymbol *NewVar(SgType *type, const std::string &_name, bool makeunique, bool delayDecl, SgExpression *initexp = 0, SgScopeStatement *loc = 0)#
-
void AddNewVarDecls()#
-
void CopyNewVarDecls(SgBasicBlock *blk, bool clearNewVars = true)#
-
void SaveVarDecl(SgVariableDeclaration *d, SgScopeStatement *curscope)#
-
SgVariableSymbol *InsertVar(SgInitializedName *d, SgScopeStatement *curscope = 0)#
-
SgVariableSymbol *LookupVar(const std::string &name, SgScopeStatement *loc = 0)#
-
SgVariableDeclaration *LookupVarDecl(const std::string &varname, SgScopeStatement *loc = 0)#
-
SgVarRefExp *CreateVarRef(std::string varname, SgNode *loc = 0)#
-
SgDotExp *CreateVarMemberRef(std::string varname, std::string field, SgNode *loc = 0)#
-
bool ReplaceAst(SgNode *orig, SgNode *n)#
Public Static Functions
-
static void GetTypeInfo(SgType *t, std::string *name = 0, std::string *stripname = 0, int *size = 0)#
-
static SgType *GetTypeInt()#
-
static bool IsFortranLoop(const SgNode *s, SgNode **ivar = 0, SgNode **lb = 0, SgNode **ub = 0, SgNode **step = 0, SgNode **body = 0)#
-
static bool IsAssignment(const SgNode *s, SgNode **lhs = 0, SgNode **rhs = 0, bool *readlhs = 0)#
-
static bool IsVarRef(SgNode *exp, SgType **vartype = 0, std::string *varname = 0, SgNode **scope = 0, bool *isglobal = 0)#
-
typedef AstInterface::AstNodeList AstNodeList#