class SgSymbol

Symbols are the basic user defined identifiers

Inheritance:

SgSymbol


Public Methods

void addAttribute(int type, void *a, int size)
void addAttribute(SgAttribute *att)
void addAttribute(void *a, int size)
void addAttribute(int type)
int attributes()
the Fortran 90 attributes
int attributeType(int i)
void* attributeValue(int i)
void* attributeValue(int i, int type)
SgStatement* body()
the body of the symbol if has one (like, function call, class,...)
SgSymbol& copy()
SgSymbol& copyAcrossFiles(SgStatement &where)
special copy to move things from a file
SgSymbol& copyLevel1()
copy also parameters
SgStatement* declaredInStmt()
the declaration statement
SgStatement* declareInStmt(SgStatement *hedr_stmt)
void declareTheSymbol(SgStatement &st)
void declareTheSymbolWithParamList(SgStatement &st, SgExpression &parlist)
void* deleteAttribute(int i)
void* deleteAttribute(int i, int type)
SgAttribute* getAttribute(int i, int type)
SgAttribute* getAttribute(int i)
int id()
unique identifier
char* identifier()
the text name for the symbol
int isAssumedShapeSymbol()
if the symbol is of assumed shape spec
int isAssumedSizeSymbol()
if the symbol is of assumed size spec
int isDeferedShapeSymbol()
if the symbol is of defered shape array
SgExpression* makeDeclExpr()
SgExpression* makeDeclExprWithParamList(SgExpression &parlist)
SgVarDeclStmt* makeVarDeclStmt()
SgVarDeclStmt* makeVarDeclStmtWithParamList(SgExpression &parlist)
int numberOfAttributes()
int numberOfAttributes(int type)
void removeAttribute(int attribute)
SgStatement* scope()
the SgControlStatement where defined
void setAttribute(int attribute)
void setNextInScope(SgStatement *s)
set next_symb field
void setType(SgType &t)
the type of the symbol
SgSymbol(int variant, char *name)
SgSymbol(int variant, char *identifier, SgType &t, SgStatement &scope)
SgSymbol(PTR_SYMB symb)
SgSymbol(int variant)
SgSymbol(SgSymbol &)
SgSymbol(int variant, char *identifier, SgType *t, SgStatement *scope)
SgSymbol(int variant, char *identifier, SgStatement &scope)
SgSymbol(int variant, char *identifier, SgType *type, SgStatement *scope, SgSymbol *structsymb, SgSymbol *nextfield )
SgSymbol(int variant, char *identifier, SgStatement *scope)
SgType* type()
the type of the symbol
int variant()
~SgSymbol()

Documentation

Symbols are the basic user defined identifiers
SgSymbol(int variant, char *identifier, SgType &t, SgStatement &scope)

SgSymbol(int variant, char *identifier, SgType *t, SgStatement *scope)

SgSymbol(int variant, char *identifier, SgStatement &scope)

SgSymbol(int variant, char *identifier, SgStatement *scope)

SgSymbol(int variant, char *identifier, SgType *type, SgStatement *scope, SgSymbol *structsymb, SgSymbol *nextfield )

SgSymbol(int variant, char *name)

SgSymbol(int variant)

SgSymbol(PTR_SYMB symb)

SgSymbol(SgSymbol &)

~SgSymbol()

int variant()

int id()
unique identifier

char* identifier()
the text name for the symbol

SgType* type()
the type of the symbol

void setType(SgType &t)
the type of the symbol

SgStatement* scope()
the SgControlStatement where defined

void setNextInScope(SgStatement *s)
set next_symb field

SgStatement* declaredInStmt()
the declaration statement

SgSymbol& copy()

SgSymbol& copyLevel1()
copy also parameters

SgSymbol& copyAcrossFiles(SgStatement &where)
special copy to move things from a file

int attributes()
the Fortran 90 attributes

void setAttribute(int attribute)

void removeAttribute(int attribute)

void declareTheSymbol(SgStatement &st)

void declareTheSymbolWithParamList(SgStatement &st, SgExpression &parlist)

SgExpression* makeDeclExpr()

SgExpression* makeDeclExprWithParamList(SgExpression &parlist)

SgVarDeclStmt* makeVarDeclStmt()

SgVarDeclStmt* makeVarDeclStmtWithParamList(SgExpression &parlist)

SgStatement* body()
the body of the symbol if has one (like, function call, class,...)

int isAssumedShapeSymbol()
if the symbol is of assumed shape spec

int isAssumedSizeSymbol()
if the symbol is of assumed size spec

int isDeferedShapeSymbol()
if the symbol is of defered shape array

SgStatement* declareInStmt(SgStatement *hedr_stmt)

int numberOfAttributes()

int numberOfAttributes(int type)

void* attributeValue(int i)

int attributeType(int i)

void* attributeValue(int i, int type)

void* deleteAttribute(int i)

void* deleteAttribute(int i, int type)

void addAttribute(int type, void *a, int size)

void addAttribute(int type)

void addAttribute(void *a, int size)

void addAttribute(SgAttribute *att)

SgAttribute* getAttribute(int i)

SgAttribute* getAttribute(int i, int type)


Direct child classes:
SgVariableSymb
SgTypeSymb
SgModuleSymb
SgLabelVarSymb
SgLabelSymb
SgInterfaceSymb
SgFunctionSymb
SgFieldSymb
SgExternalSymb
SgConstructSymb
SgConstantSymb
SgClassSymb

alphabetic index hierarchy of classes


Email contact: zgs@npac.syr.edu

generated by doc++