ROSE 0.11.145.230
|
Functions that build an AST.
Functions | |
void | initDiagnostics () |
template<class actualFunction > | |
actualFunction * | buildNondefiningFunctionDeclaration_T (const SgName &name, SgType *return_type, SgFunctionParameterList *paralist, bool isMemberFunction, SgScopeStatement *scope, SgExprListExp *decoratorList, unsigned int functionConstVolatileFlags, SgTemplateArgumentPtrList *templateArgumentsList, SgTemplateParameterPtrList *templateParameterList, SgStorageModifier::storage_modifier_enum sm) |
template<class actualFunction > | |
actualFunction * | buildDefiningFunctionDeclaration_T (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, bool isMemberFunction, SgScopeStatement *scope, SgExprListExp *decoratorList, unsigned int functionConstVolatileFlags, actualFunction *first_nondefinng_declaration, SgTemplateArgumentPtrList *templateArgumentsList) |
A template function for function declaration builders. | |
template<class T > | |
ROSE_DLL_API void | resetDeclaration (T *classDeclaration_copy, T *classDeclaration_original, SgScopeStatement *targetScope) |
Function to reset scopes in SgDeclarationStatement IR nodes. | |
Builders for SgType | |
Builders for simple and complex SgType nodes, such as integer type, function type, array type, struct type, etc. | |
ROSE_DLL_API SgTypeBool * | buildBoolType () |
Built in simple types. | |
ROSE_DLL_API SgTypeNullptr * | buildNullptrType () |
Built in simple types. | |
ROSE_DLL_API SgTypeChar * | buildCharType () |
Built in simple types. | |
ROSE_DLL_API SgTypeDouble * | buildDoubleType () |
Built in simple types. | |
ROSE_DLL_API SgTypeFloat * | buildFloatType () |
Built in simple types. | |
ROSE_DLL_API SgTypeInt * | buildIntType () |
Built in simple types. | |
ROSE_DLL_API SgTypeLong * | buildLongType () |
Built in simple types. | |
ROSE_DLL_API SgTypeLongDouble * | buildLongDoubleType () |
Built in simple types. | |
ROSE_DLL_API SgTypeLongLong * | buildLongLongType () |
Built in simple types. | |
ROSE_DLL_API SgTypeShort * | buildShortType () |
Built in simple types. | |
ROSE_DLL_API SgTypeFloat80 * | buildFloat80Type () |
Built in simple types. | |
ROSE_DLL_API SgTypeFloat128 * | buildFloat128Type () |
Built in simple types. | |
ROSE_DLL_API SgTypeFixed * | buildFixedType (SgExpression *fraction, SgExpression *scale) |
Build a Jovial fixed type with a fraction specifier and a scale specifier. | |
ROSE_DLL_API SgJovialBitType * | buildJovialBitType (SgExpression *size) |
Build a Jovial bit type of a given size. | |
ROSE_DLL_API SgTypeString * | buildStringType () |
DQ (8/21/2010): We want to move to the new buildStringType( SgExpression*,size_t) function over the older buildStringType() function. | |
ROSE_DLL_API SgTypeString * | buildStringType (SgExpression *stringLengthExpression) |
Built in simple types. | |
ROSE_DLL_API SgTypeVoid * | buildVoidType () |
Built in simple types. | |
ROSE_DLL_API SgTypeWchar * | buildWcharType () |
Built in simple types. | |
ROSE_DLL_API SgTypeChar16 * | buildChar16Type () |
Built in simple types. | |
ROSE_DLL_API SgTypeChar32 * | buildChar32Type () |
Built in simple types. | |
ROSE_DLL_API SgTypeSignedChar * | buildSignedCharType () |
Built in simple types. | |
ROSE_DLL_API SgTypeSignedInt * | buildSignedIntType () |
Built in simple types. | |
ROSE_DLL_API SgTypeSignedLong * | buildSignedLongType () |
Built in simple types. | |
ROSE_DLL_API SgTypeSignedLongLong * | buildSignedLongLongType () |
Built in simple types. | |
ROSE_DLL_API SgTypeSignedShort * | buildSignedShortType () |
Built in simple types. | |
ROSE_DLL_API SgTypeSigned128bitInteger * | buildSigned128bitIntegerType () |
Built in simple types. | |
ROSE_DLL_API SgTypeUnsigned128bitInteger * | buildUnsigned128bitIntegerType () |
Built in simple types. | |
ROSE_DLL_API SgTypeUnsignedChar * | buildUnsignedCharType () |
Built in simple types. | |
ROSE_DLL_API SgTypeUnsignedInt * | buildUnsignedIntType () |
Built in simple types. | |
ROSE_DLL_API SgTypeUnsignedLong * | buildUnsignedLongType () |
Built in simple types. | |
ROSE_DLL_API SgTypeUnsignedLongLong * | buildUnsignedLongLongType () |
Built in simple types. | |
ROSE_DLL_API SgTypeUnsignedShort * | buildUnsignedShortType () |
Built in simple types. | |
ROSE_DLL_API SgTypeUnknown * | buildUnknownType () |
Built in simple types. | |
ROSE_DLL_API SgAutoType * | buildAutoType () |
Built in simple types. | |
ROSE_DLL_API SgTypeBool * | buildBoolType (SgExpression *kind_expr) |
Builder functions for primitive types with type size (kind) expressions. | |
ROSE_DLL_API SgTypeInt * | buildIntType (SgExpression *kind_expr) |
Built in simple types. | |
ROSE_DLL_API SgTypeFloat * | buildFloatType (SgExpression *kind_expr) |
Built in simple types. | |
ROSE_DLL_API SgTypeUnsignedInt * | buildUnsignedIntType (SgExpression *kind_expr) |
Built in simple types. | |
ROSE_DLL_API SgType * | buildFortranImplicitType (SgName name) |
Build a type based on Fortran's implicit typing rules. | |
ROSE_DLL_API SgPointerType * | buildPointerType (SgType *base_type=nullptr) |
Build a pointer type. | |
ROSE_DLL_API SgReferenceType * | buildReferenceType (SgType *base_type=nullptr) |
Build a reference type. | |
ROSE_DLL_API SgRvalueReferenceType * | buildRvalueReferenceType (SgType *base_type) |
Build a rvalue reference type. | |
ROSE_DLL_API SgDeclType * | buildDeclType (SgExpression *base_expression, SgType *base_type) |
Build a decltype reference type. | |
ROSE_DLL_API SgTypeOfType * | buildTypeOfType (SgExpression *base_expression, SgType *base_type) |
Build a GNU typeof operator. | |
ROSE_DLL_API SgModifierType * | buildModifierType (SgType *base_type=nullptr) |
Build a modifier type. | |
ROSE_DLL_API SgModifierType * | buildConstType (SgType *base_type=nullptr) |
Build a const type. | |
ROSE_DLL_API SgModifierType * | buildAliasedType (SgType *base_type) |
Build an aliased type for Ada. | |
ROSE_DLL_API SgModifierType * | buildNotNullType (SgType *base_type) |
Build a not null type for Ada. | |
ROSE_DLL_API SgModifierType * | buildVolatileType (SgType *base_type=nullptr) |
Build a volatile type. | |
ROSE_DLL_API SgModifierType * | buildConstVolatileType (SgType *base_type=nullptr) |
Build a const volatile type. | |
ROSE_DLL_API SgModifierType * | buildRestrictType (SgType *base_type) |
Build a restrict type. | |
ROSE_DLL_API SgArrayType * | buildArrayType (SgType *base_type=nullptr, SgExpression *index=nullptr) |
Build ArrayType. | |
ROSE_DLL_API SgArrayType * | buildArrayType (SgType *base_type, SgExprListExp *dim_info) |
Build an ArrayType based on dimension information. | |
ROSE_DLL_API SgModifierType * | buildFortranKindType (SgType *base_type, SgExpression *kindExpression) |
Build a type based on the Fortran kind mechanism. | |
ROSE_DLL_API SgFunctionType * | buildFunctionType (SgType *return_type, SgFunctionParameterTypeList *typeList=nullptr) |
Build function type from return type and parameter type list. | |
ROSE_DLL_API SgFunctionType * | buildFunctionType (SgType *return_type, SgFunctionParameterList *argList=nullptr) |
Build function type from return type and parameter list. | |
ROSE_DLL_API SgMemberFunctionType * | buildMemberFunctionType (SgType *return_type, SgFunctionParameterTypeList *typeList, SgScopeStatement *struct_name, unsigned int mfunc_specifier) |
Built in simple types. | |
ROSE_DLL_API SgMemberFunctionType * | buildMemberFunctionType (SgType *return_type, SgFunctionParameterTypeList *typeList, SgType *classType, unsigned int mfunc_specifier) |
DQ (8/19/2012): Refactored some of the code supporting construction of the SgMemberFunctionType. | |
ROSE_DLL_API SgPointerMemberType * | buildPointerMemberType (SgType *base_type, SgType *classType) |
Pei-Hung (06/30/2023): support for SgPointerMemberType. | |
ROSE_DLL_API SgClassType * | buildClassTemplateType (SgTemplateClassDeclaration *template_decl, std::vector< SgNode * > &template_args) |
Some support for building class template instantiation declarations. | |
ROSE_DLL_API SgClassType * | buildTemplateClassType (SgTemplateClassDeclaration *template_decl, std::vector< SgNode * > &template_args) |
Same as buildClassTemplateType(), just better name. | |
ROSE_DLL_API SgType * | buildOpaqueType (std::string const type_name, SgScopeStatement *scope) |
Build an opaque type with a name, useful when a type's details are unknown during transformation, especially for a runtime library's internal type. Must provide scope here. | |
ROSE_DLL_API SgModifierType * | buildUpcStrictType (SgType *base_type=nullptr) |
Build a UPC strict type. | |
ROSE_DLL_API SgModifierType * | buildUpcRelaxedType (SgType *base_type=nullptr) |
Build a UPC relaxed type. | |
ROSE_DLL_API SgModifierType * | buildUpcSharedType (SgType *base_type=nullptr, long layout=-1) |
Build a UPC shared type. | |
ROSE_DLL_API SgModifierType * | buildUpcBlockIndefiniteType (SgType *base_type=nullptr) |
Build a UPC shared[] type. | |
ROSE_DLL_API SgModifierType * | buildUpcBlockStarType (SgType *base_type=nullptr) |
Build a UPC shared[*] type. | |
ROSE_DLL_API SgModifierType * | buildUpcBlockNumberType (SgType *base_type, long block_factor) |
Build a UPC shared[n] type. | |
ROSE_DLL_API SgTypeComplex * | buildComplexType (SgType *base_type=nullptr) |
Build a complex type. | |
ROSE_DLL_API SgTypeImaginary * | buildImaginaryType (SgType *base_type=nullptr) |
Build an imaginary type. | |
ROSE_DLL_API SgConstVolatileModifier * | buildConstVolatileModifier (SgConstVolatileModifier::cv_modifier_enum mtype=SgConstVolatileModifier::e_unknown) |
Build a const/volatile type qualifier. | |
ROSE_DLL_API SgTypeMatrix * | buildMatrixType () |
Build a Matlab Matrix Type. | |
ROSE_DLL_API SgTypeTuple * | buildTupleType (SgType *t1=NULL, SgType *t2=NULL, SgType *t3=NULL, SgType *t4=NULL, SgType *t5=NULL, SgType *t6=NULL, SgType *t7=NULL, SgType *t8=NULL, SgType *t9=NULL, SgType *t10=NULL) |
Build a tuple of types. Useful for a function returning multiple variables of different types. | |
ROSE_DLL_API SgNonrealType * | buildNonrealType (const SgName &name, SgDeclarationScope *scope) |
Build a non real type used for template parameter. Internally a SgNorealDecl is also built. | |
Builders for expressions | |
handle side effects of parent pointers, Sg_File_Info, lvalue etc. Expressions are usually built using bottomup approach, i.e. buiding operands first, then the expression operating on the operands. It is also possible to build expressions with NULL operands or empty values first, then set them afterwards.
| |
ROSE_DLL_API SgVariantExpression * | buildVariantExpression () |
ROSE_DLL_API SgNullExpression * | buildNullExpression () |
Build a null expression, set file info as the default one. | |
ROSE_DLL_API SgNullExpression * | buildNullExpression_nfi () |
No file info version of buildNullExpression(). File info is to be set later on. | |
ROSE_DLL_API SgColonShapeExp * | buildColonShapeExp () |
Build a Fortran colon-shape expression, set file info as the default one. | |
ROSE_DLL_API SgColonShapeExp * | buildColonShapeExp_nfi () |
No file info version of buildColonShapeExp(). File info is to be set later on. | |
ROSE_DLL_API SgBoolValExp * | buildBoolValExp (int value=0) |
Build a bool value expression, the name convention of SgBoolValExp is little different from others for some unknown reason. | |
ROSE_DLL_API SgBoolValExp * | buildBoolValExp (bool value=0) |
ROSE_DLL_API SgBoolValExp * | buildBoolValExp_nfi (int value) |
ROSE_DLL_API SgCharVal * | buildCharVal (char value=0) |
ROSE_DLL_API SgCharVal * | buildCharVal_nfi (char value, const std::string &str) |
ROSE_DLL_API SgNullptrValExp * | buildNullptrValExp () |
DQ (7/31/2014): Adding support for C++11 nullptr const value expressions. | |
ROSE_DLL_API SgNullptrValExp * | buildNullptrValExp_nfi () |
ROSE_DLL_API SgVoidVal * | buildVoidVal () |
DQ (2/14/2019): Adding support for C++14 void value expressions. | |
ROSE_DLL_API SgVoidVal * | buildVoidVal_nfi () |
ROSE_DLL_API SgWcharVal * | buildWcharVal (wchar_t value=0) |
ROSE_DLL_API SgWcharVal * | buildWcharVal_nfi (wchar_t value, const std::string &str) |
ROSE_DLL_API SgChar16Val * | buildChar16Val (unsigned short value=0) |
ROSE_DLL_API SgChar16Val * | buildChar16Val_nfi (unsigned short value, const std::string &str) |
ROSE_DLL_API SgChar32Val * | buildChar32Val (unsigned int value=0) |
ROSE_DLL_API SgChar32Val * | buildChar32Val_nfi (unsigned int value, const std::string &str) |
ROSE_DLL_API SgComplexVal * | buildComplexVal (SgValueExp *real_value, SgValueExp *imaginary_value) |
ROSE_DLL_API SgComplexVal * | buildComplexVal_nfi (SgValueExp *real_value, SgValueExp *imaginary_value, const std::string &str) |
ROSE_DLL_API SgComplexVal * | buildImaginaryVal (long double imaginary_value) |
ROSE_DLL_API SgComplexVal * | buildImaginaryVal (SgValueExp *imaginary_value) |
ROSE_DLL_API SgComplexVal * | buildImaginaryVal_nfi (SgValueExp *imaginary_value, const std::string &str) |
ROSE_DLL_API SgDoubleVal * | buildDoubleVal (double value=0.0) |
Build a double value expression. | |
ROSE_DLL_API SgDoubleVal * | buildDoubleVal_nfi (double value, const std::string &str) |
ROSE_DLL_API SgFloatVal * | buildFloatVal (float value=0.0) |
ROSE_DLL_API SgFloatVal * | buildFloatVal_nfi (float value=0.0) |
ROSE_DLL_API SgFloatVal * | buildFloatVal_nfi (float value, const std::string &str) |
ROSE_DLL_API SgFloatVal * | buildFloatVal_nfi (const std::string &str) |
Build a float value expression by converting the string. | |
ROSE_DLL_API SgIntVal * | buildIntVal (int value=0) |
Build an integer value expression. | |
ROSE_DLL_API SgIntVal * | buildIntValHex (int value=0) |
ROSE_DLL_API SgIntVal * | buildIntVal_nfi (int value=0) |
ROSE_DLL_API SgIntVal * | buildIntVal_nfi (int value, const std::string &str) |
ROSE_DLL_API SgIntVal * | buildIntVal_nfi (const std::string &str) |
Build an integer value expression by converting the string. | |
ROSE_DLL_API SgLongIntVal * | buildLongIntVal (long value=0) |
Build a long integer value expression. | |
ROSE_DLL_API SgLongIntVal * | buildLongIntValHex (long value=0) |
ROSE_DLL_API SgLongIntVal * | buildLongIntVal_nfi (long value, const std::string &str) |
ROSE_DLL_API SgLongLongIntVal * | buildLongLongIntVal (long long value=0) |
Build a long long integer value expression. | |
ROSE_DLL_API SgLongLongIntVal * | buildLongLongIntValHex (long long value=0) |
ROSE_DLL_API SgLongLongIntVal * | buildLongLongIntVal_nfi (long long value, const std::string &str) |
ROSE_DLL_API SgEnumVal * | buildEnumVal_nfi (long long int value, SgEnumDeclaration *decl, SgName name) |
ROSE_DLL_API SgEnumVal * | buildEnumVal (long long int value, SgEnumDeclaration *decl, SgName name) |
ROSE_DLL_API SgEnumVal * | buildEnumVal (SgEnumFieldSymbol *sym) |
ROSE_DLL_API SgLongDoubleVal * | buildLongDoubleVal (long double value=0.0) |
ROSE_DLL_API SgLongDoubleVal * | buildLongDoubleVal_nfi (long double value, const std::string &str) |
ROSE_DLL_API SgFloat80Val * | buildFloat80Val (long double value=0.0) |
ROSE_DLL_API SgFloat80Val * | buildFloat80Val_nfi (long double value, const std::string &str) |
ROSE_DLL_API SgFloat128Val * | buildFloat128Val (long double value=0.0) |
ROSE_DLL_API SgFloat128Val * | buildFloat128Val_nfi (long double value, const std::string &str) |
ROSE_DLL_API SgShortVal * | buildShortVal (short value=0) |
ROSE_DLL_API SgShortVal * | buildShortValHex (short value=0) |
ROSE_DLL_API SgShortVal * | buildShortVal_nfi (short value, const std::string &str) |
ROSE_DLL_API SgStringVal * | buildStringVal (std::string value="") |
ROSE_DLL_API SgStringVal * | buildStringVal_nfi (std::string value) |
ROSE_DLL_API SgUnsignedCharVal * | buildUnsignedCharVal (unsigned char v=0) |
Build an unsigned char. | |
ROSE_DLL_API SgUnsignedCharVal * | buildUnsignedCharValHex (unsigned char v=0) |
ROSE_DLL_API SgUnsignedCharVal * | buildUnsignedCharVal_nfi (unsigned char v, const std::string &str) |
ROSE_DLL_API SgUnsignedShortVal * | buildUnsignedShortVal (unsigned short v=0) |
Build an unsigned short integer. | |
ROSE_DLL_API SgUnsignedShortVal * | buildUnsignedShortValHex (unsigned short v=0) |
ROSE_DLL_API SgUnsignedShortVal * | buildUnsignedShortVal_nfi (unsigned short v, const std::string &str) |
ROSE_DLL_API SgUnsignedIntVal * | buildUnsignedIntVal (unsigned int v=0) |
Build an unsigned integer. | |
ROSE_DLL_API SgUnsignedIntVal * | buildUnsignedIntValHex (unsigned int v=0) |
ROSE_DLL_API SgUnsignedIntVal * | buildUnsignedIntVal_nfi (unsigned int v, const std::string &str) |
ROSE_DLL_API SgUnsignedLongVal * | buildUnsignedLongVal (unsigned long v=0) |
Build a unsigned long integer. | |
ROSE_DLL_API SgUnsignedLongVal * | buildUnsignedLongValHex (unsigned long v=0) |
ROSE_DLL_API SgUnsignedLongVal * | buildUnsignedLongVal_nfi (unsigned long v, const std::string &str) |
ROSE_DLL_API SgUnsignedLongLongIntVal * | buildUnsignedLongLongIntVal (unsigned long long v=0) |
Build an unsigned long long integer. | |
ROSE_DLL_API SgUnsignedLongLongIntVal * | buildUnsignedLongLongIntValHex (unsigned long long v=0) |
ROSE_DLL_API SgUnsignedLongLongIntVal * | buildUnsignedLongLongIntVal_nfi (unsigned long long v, const std::string &str) |
ROSE_DLL_API SgJovialBitVal * | buildJovialBitVal_nfi (const std::string &str) |
Build a Jovial bit value expression. | |
ROSE_DLL_API SgTemplateParameterVal * | buildTemplateParameterVal (int template_parameter_position=-1) |
Build an template parameter value expression. | |
ROSE_DLL_API SgTemplateParameterVal * | buildTemplateParameterVal_nfi (int template_parameter_position, const std::string &str) |
ROSE_DLL_API SgTemplateType * | buildTemplateType (SgName name="") |
Build a template type, used for template parameter and later argument. | |
ROSE_DLL_API SgTemplateParameter * | buildTemplateParameter (SgTemplateParameter::template_parameter_enum parameterType, SgType *) |
Build a template parameter, passing enum kind and SgTemplateType template_parameter_enum { parameter_undefined = 0, type_parameter = 1, nontype_parameter = 2, template_parameter = 3}. | |
ROSE_DLL_API SgNonrealDecl * | buildNonrealDecl (const SgName &name, SgDeclarationScope *scope, SgDeclarationScope *child_scope=NULL) |
Build a declaration of a non-real class or class-member representing template parameters and their members. | |
ROSE_DLL_API SgNonrealRefExp * | buildNonrealRefExp_nfi (SgNonrealSymbol *sym) |
Build a reference to the non-real declaration of a member of a non-real class. | |
ROSE_DLL_API SgUpcThreads * | buildUpcThreads () |
Build UPC THREADS (integer expression) | |
ROSE_DLL_API SgUpcThreads * | buildUpcThreads_nfi () |
Build UPC THREADS (integer expression) | |
ROSE_DLL_API SgUpcMythread * | buildUpcMythread () |
Build UPC MYTHREAD (integer expression) | |
ROSE_DLL_API SgUpcMythread * | buildUpcMythread_nfi () |
Build UPC MYTHREAD (integer expression) | |
ROSE_DLL_API SgThisExp * | buildThisExp (SgSymbol *sym) |
Build this pointer. | |
ROSE_DLL_API SgThisExp * | buildThisExp_nfi (SgSymbol *sym) |
ROSE_DLL_API SgSuperExp * | buildSuperExp (SgClassSymbol *sym) |
Build super pointer. | |
ROSE_DLL_API SgSuperExp * | buildSuperExp_nfi (SgClassSymbol *sym) |
ROSE_DLL_API SgClassExp * | buildClassExp (SgClassSymbol *sym) |
Build class pointer. | |
ROSE_DLL_API SgClassExp * | buildClassExp_nfi (SgClassSymbol *sym) |
ROSE_DLL_API SgLambdaRefExp * | buildLambdaRefExp (SgType *return_type, SgFunctionParameterList *params, SgScopeStatement *scope) |
Build lambda expression. | |
ROSE_DLL_API SgAddressOfOp * | buildAddressOfOp (SgExpression *op=NULL) |
ROSE_DLL_API SgAddressOfOp * | buildAddressOfOp_nfi (SgExpression *op) |
ROSE_DLL_API SgBitComplementOp * | buildBitComplementOp (SgExpression *op=NULL) |
ROSE_DLL_API SgBitComplementOp * | buildBitComplementOp_nfi (SgExpression *op) |
ROSE_DLL_API SgMinusOp * | buildMinusOp (SgExpression *op=NULL) |
ROSE_DLL_API SgMinusOp * | buildMinusOp_nfi (SgExpression *op) |
ROSE_DLL_API SgNotOp * | buildNotOp (SgExpression *op=NULL) |
ROSE_DLL_API SgNotOp * | buildNotOp_nfi (SgExpression *op) |
ROSE_DLL_API SgPointerDerefExp * | buildPointerDerefExp (SgExpression *op=NULL) |
ROSE_DLL_API SgPointerDerefExp * | buildPointerDerefExp_nfi (SgExpression *op) |
ROSE_DLL_API SgUnaryAddOp * | buildUnaryAddOp (SgExpression *op=NULL) |
ROSE_DLL_API SgUnaryAddOp * | buildUnaryAddOp_nfi (SgExpression *op) |
ROSE_DLL_API SgMinusMinusOp * | buildMinusMinusOp (SgExpression *op=NULL) |
ROSE_DLL_API SgMinusMinusOp * | buildMinusMinusOp_nfi (SgExpression *op) |
ROSE_DLL_API SgPlusPlusOp * | buildPlusPlusOp (SgExpression *op=NULL) |
ROSE_DLL_API SgPlusPlusOp * | buildPlusPlusOp_nfi (SgExpression *op) |
ROSE_DLL_API SgRealPartOp * | buildRealPartOp (SgExpression *op=NULL) |
ROSE_DLL_API SgRealPartOp * | buildRealPartOp_nfi (SgExpression *op) |
ROSE_DLL_API SgImagPartOp * | buildImagPartOp (SgExpression *op=NULL) |
ROSE_DLL_API SgImagPartOp * | buildImagPartOp_nfi (SgExpression *op) |
ROSE_DLL_API SgConjugateOp * | buildConjugateOp (SgExpression *op=NULL) |
ROSE_DLL_API SgConjugateOp * | buildConjugateOp_nfi (SgExpression *op) |
ROSE_DLL_API SgVarArgStartOneOperandOp * | buildVarArgStartOneOperandOp (SgExpression *op=NULL) |
ROSE_DLL_API SgVarArgStartOneOperandOp * | buildVarArgStartOneOperandOp_nfi (SgExpression *op) |
ROSE_DLL_API SgVarArgEndOp * | buildVarArgEndOp (SgExpression *op=NULL) |
ROSE_DLL_API SgVarArgEndOp * | buildVarArgEndOp_nfi (SgExpression *op) |
ROSE_DLL_API SgAbsOp * | buildAbsOp (SgExpression *op=NULL) |
ROSE_DLL_API SgAbsOp * | buildAbsOp_nfi (SgExpression *op) |
ROSE_DLL_API SgMatrixTransposeOp * | buildMatrixTransposeOp (SgExpression *op=NULL) |
ROSE_DLL_API SgMatrixTransposeOp * | buildMatrixTransposeOp_nfi (SgExpression *op) |
ROSE_DLL_API SgCastExp * | buildCastExp (SgExpression *operand_i=NULL, SgType *expression_type=NULL, SgCastExp::cast_type_enum cast_type=SgCastExp::e_C_style_cast) |
Build a type casting expression. | |
ROSE_DLL_API SgCastExp * | buildCastExp_nfi (SgExpression *operand_i, SgType *expression_type, SgCastExp::cast_type_enum cast_type) |
ROSE_DLL_API SgVarArgOp * | buildVarArgOp_nfi (SgExpression *operand_i, SgType *expression_type) |
Build vararg op expression. | |
ROSE_DLL_API SgMinusOp * | buildMinusOp (SgExpression *operand_i, SgUnaryOp::Sgop_mode a_mode) |
Build – expression, Sgop_mode is a value of either SgUnaryOp::prefix or SgUnaryOp::postfix. | |
ROSE_DLL_API SgMinusOp * | buildMinusOp_nfi (SgExpression *operand_i, SgUnaryOp::Sgop_mode a_mode) |
ROSE_DLL_API SgMinusMinusOp * | buildMinusMinusOp (SgExpression *operand_i, SgUnaryOp::Sgop_mode a_mode) |
ROSE_DLL_API SgMinusMinusOp * | buildMinusMinusOp_nfi (SgExpression *operand_i, SgUnaryOp::Sgop_mode a_mode) |
ROSE_DLL_API SgPlusPlusOp * | buildPlusPlusOp (SgExpression *operand_i, SgUnaryOp::Sgop_mode a_mode) |
Build ++x or x++ , specify prefix or postfix using either SgUnaryOp::prefix or SgUnaryOp::postfix. | |
ROSE_DLL_API SgPlusPlusOp * | buildPlusPlusOp_nfi (SgExpression *operand_i, SgUnaryOp::Sgop_mode a_mode) |
ROSE_DLL_API SgThrowOp * | buildThrowOp (SgExpression *, SgThrowOp::e_throw_kind) |
Build a ThrowOp expression. | |
ROSE_DLL_API SgNewExp * | buildNewExp (SgType *type, SgExprListExp *exprListExp, SgConstructorInitializer *constInit, SgExpression *expr, short int val, SgFunctionDeclaration *funcDecl) |
ROSE_DLL_API SgDeleteExp * | buildDeleteExp (SgExpression *variable, short is_array, short need_global_specifier, SgFunctionDeclaration *deleteOperatorDeclaration) |
ROSE_DLL_API SgTypeIdOp * | buildTypeIdOp (SgExpression *operand_expr, SgType *operand_type) |
DQ (1/25/2013): Added support for typeId operators. | |
ROSE_DLL_API SgAddOp * | buildAddOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgAddOp * | buildAddOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgAndAssignOp * | buildAndAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgAndAssignOp * | buildAndAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgAndOp * | buildAndOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgAndOp * | buildAndOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgArrowExp * | buildArrowExp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgArrowExp * | buildArrowExp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgArrowStarOp * | buildArrowStarOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgArrowStarOp * | buildArrowStarOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgAssignOp * | buildAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgAssignOp * | buildAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgAtOp * | buildAtOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgAtOp * | buildAtOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgBitAndOp * | buildBitAndOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgBitAndOp * | buildBitAndOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgBitOrOp * | buildBitOrOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgBitOrOp * | buildBitOrOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgBitXorOp * | buildBitXorOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgBitXorOp * | buildBitXorOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgCommaOpExp * | buildCommaOpExp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgCommaOpExp * | buildCommaOpExp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgConcatenationOp * | buildConcatenationOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgConcatenationOp * | buildConcatenationOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgDivAssignOp * | buildDivAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgDivAssignOp * | buildDivAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgDivideOp * | buildDivideOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgDivideOp * | buildDivideOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgDotExp * | buildDotExp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgDotExp * | buildDotExp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgDotStarOp * | buildDotStarOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgDotStarOp * | buildDotStarOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgEqualityOp * | buildEqualityOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgEqualityOp * | buildEqualityOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgExponentiationOp * | buildExponentiationOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgExponentiationOp * | buildExponentiationOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgExponentiationAssignOp * | buildExponentiationAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgExponentiationAssignOp * | buildExponentiationAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgGreaterOrEqualOp * | buildGreaterOrEqualOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgGreaterOrEqualOp * | buildGreaterOrEqualOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgGreaterThanOp * | buildGreaterThanOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgGreaterThanOp * | buildGreaterThanOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgIntegerDivideOp * | buildIntegerDivideOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgIntegerDivideOp * | buildIntegerDivideOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgIntegerDivideAssignOp * | buildIntegerDivideAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgIntegerDivideAssignOp * | buildIntegerDivideAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgIorAssignOp * | buildIorAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgIorAssignOp * | buildIorAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgIsOp * | buildIsOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgIsOp * | buildIsOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgIsNotOp * | buildIsNotOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgIsNotOp * | buildIsNotOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgLessOrEqualOp * | buildLessOrEqualOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgLessOrEqualOp * | buildLessOrEqualOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgLessThanOp * | buildLessThanOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgLessThanOp * | buildLessThanOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgLshiftAssignOp * | buildLshiftAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgLshiftAssignOp * | buildLshiftAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgLshiftOp * | buildLshiftOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgLshiftOp * | buildLshiftOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgMembershipOp * | buildMembershipOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgMembershipOp * | buildMembershipOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgMinusAssignOp * | buildMinusAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgMinusAssignOp * | buildMinusAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgModAssignOp * | buildModAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgModAssignOp * | buildModAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgModOp * | buildModOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgModOp * | buildModOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgMultAssignOp * | buildMultAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgMultAssignOp * | buildMultAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgMultiplyOp * | buildMultiplyOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgMultiplyOp * | buildMultiplyOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgNonMembershipOp * | buildNonMembershipOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgNonMembershipOp * | buildNonMembershipOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgNotEqualOp * | buildNotEqualOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgNotEqualOp * | buildNotEqualOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgOrOp * | buildOrOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgOrOp * | buildOrOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgPlusAssignOp * | buildPlusAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgPlusAssignOp * | buildPlusAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgPntrArrRefExp * | buildPntrArrRefExp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgPntrArrRefExp * | buildPntrArrRefExp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgRemOp * | buildRemOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgRemOp * | buildRemOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgRshiftAssignOp * | buildRshiftAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgRshiftAssignOp * | buildRshiftAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgJavaUnsignedRshiftAssignOp * | buildJavaUnsignedRshiftAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgJavaUnsignedRshiftAssignOp * | buildJavaUnsignedRshiftAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgReplicationOp * | buildReplicationOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgReplicationOp * | buildReplicationOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgRshiftOp * | buildRshiftOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgRshiftOp * | buildRshiftOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgJavaUnsignedRshiftOp * | buildJavaUnsignedRshiftOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgJavaUnsignedRshiftOp * | buildJavaUnsignedRshiftOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgScopeOp * | buildScopeOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgScopeOp * | buildScopeOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgSubtractOp * | buildSubtractOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgSubtractOp * | buildSubtractOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgXorAssignOp * | buildXorAssignOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgXorAssignOp * | buildXorAssignOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgVarArgCopyOp * | buildVarArgCopyOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgVarArgCopyOp * | buildVarArgCopyOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgVarArgStartOp * | buildVarArgStartOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgVarArgStartOp * | buildVarArgStartOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgPowerOp * | buildPowerOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgPowerOp * | buildPowerOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgElementwisePowerOp * | buildElementwisePowerOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgElementwisePowerOp * | buildElementwisePowerOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgElementwiseMultiplyOp * | buildElementwiseMultiplyOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgElementwiseMultiplyOp * | buildElementwiseMultiplyOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgElementwiseDivideOp * | buildElementwiseDivideOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgElementwiseDivideOp * | buildElementwiseDivideOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgLeftDivideOp * | buildLeftDivideOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgLeftDivideOp * | buildLeftDivideOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgElementwiseLeftDivideOp * | buildElementwiseLeftDivideOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgElementwiseLeftDivideOp * | buildElementwiseLeftDivideOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgElementwiseAddOp * | buildElementwiseAddOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgElementwiseAddOp * | buildElementwiseAddOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgElementwiseSubtractOp * | buildElementwiseSubtractOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgElementwiseSubtractOp * | buildElementwiseSubtractOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgSpaceshipOp * | buildSpaceshipOp (SgExpression *lhs=NULL, SgExpression *rhs=NULL) |
ROSE_DLL_API SgSpaceshipOp * | buildSpaceshipOp_nfi (SgExpression *lhs, SgExpression *rhs) |
ROSE_DLL_API SgConditionalExp * | buildConditionalExp (SgExpression *test=NULL, SgExpression *a=NULL, SgExpression *b=NULL) |
Build a conditional expression ?: | |
SgConditionalExp * | buildConditionalExp_nfi (SgExpression *test, SgExpression *a, SgExpression *b, SgType *t) |
ROSE_DLL_API SgExprListExp * | buildExprListExp (SgExpression *expr1=NULL, SgExpression *expr2=NULL, SgExpression *expr3=NULL, SgExpression *expr4=NULL, SgExpression *expr5=NULL, SgExpression *expr6=NULL, SgExpression *expr7=NULL, SgExpression *expr8=NULL, SgExpression *expr9=NULL, SgExpression *expr10=NULL) |
Build a SgExprListExp, used for function call parameter list etc. | |
ROSE_DLL_API SgExprListExp * | buildExprListExp (const std::vector< SgExpression * > &exprs) |
SgExprListExp * | buildExprListExp_nfi () |
SgExprListExp * | buildExprListExp_nfi (const std::vector< SgExpression * > &exprs) |
SgSubscriptExpression * | buildSubscriptExpression_nfi (SgExpression *lower_bound, SgExpression *upper_bound, SgExpression *stride) |
Build a SgSubscriptExpression, used for array shape expressions. The lower bound and stride may be nullptrs. | |
ROSE_DLL_API SgTupleExp * | buildTupleExp (SgExpression *expr1=NULL, SgExpression *expr2=NULL, SgExpression *expr3=NULL, SgExpression *expr4=NULL, SgExpression *expr5=NULL, SgExpression *expr6=NULL, SgExpression *expr7=NULL, SgExpression *expr8=NULL, SgExpression *expr9=NULL, SgExpression *expr10=NULL) |
Build a SgTupleExp. | |
ROSE_DLL_API SgTupleExp * | buildTupleExp (const std::vector< SgExpression * > &exprs) |
SgTupleExp * | buildTupleExp_nfi () |
SgTupleExp * | buildTupleExp_nfi (const std::vector< SgExpression * > &exprs) |
ROSE_DLL_API SgListExp * | buildListExp (SgExpression *expr1=NULL, SgExpression *expr2=NULL, SgExpression *expr3=NULL, SgExpression *expr4=NULL, SgExpression *expr5=NULL, SgExpression *expr6=NULL, SgExpression *expr7=NULL, SgExpression *expr8=NULL, SgExpression *expr9=NULL, SgExpression *expr10=NULL) |
Build a SgListExp. | |
ROSE_DLL_API SgListExp * | buildListExp (const std::vector< SgExpression * > &exprs) |
SgListExp * | buildListExp_nfi () |
SgListExp * | buildListExp_nfi (const std::vector< SgExpression * > &exprs) |
ROSE_DLL_API SgComprehension * | buildComprehension (SgExpression *target, SgExpression *iter, SgExprListExp *ifs) |
SgComprehension * | buildComprehension_nfi (SgExpression *target, SgExpression *iter, SgExprListExp *ifs) |
ROSE_DLL_API SgListComprehension * | buildListComprehension (SgExpression *elt, SgExprListExp *generators) |
SgListComprehension * | buildListComprehension_nfi (SgExpression *elt, SgExprListExp *generators) |
ROSE_DLL_API SgSetComprehension * | buildSetComprehension (SgExpression *elt, SgExprListExp *generators) |
SgSetComprehension * | buildSetComprehension_nfi (SgExpression *elt, SgExprListExp *generators) |
ROSE_DLL_API SgDictionaryComprehension * | buildDictionaryComprehension (SgKeyDatumPair *kd_pair, SgExprListExp *generators) |
SgDictionaryComprehension * | buildDictionaryComprehension_nfi (SgKeyDatumPair *kd_pair, SgExprListExp *generators) |
ROSE_DLL_API SgVarRefExp * | buildVarRefExp (const SgName &name, SgScopeStatement *scope=NULL) |
Build SgVarRefExp based on a variable's Sage name. It will lookup the name in the symbol table internally starting from scope. A variable name is unique so type can be inferred (double check this). | |
ROSE_DLL_API SgVarRefExp * | buildVarRefExp (const std::string &varName, SgScopeStatement *scope=NULL) |
Build SgVarRefExp based on a variable's name. It will lookup symbol table internally starting from scope. A variable is unique so type can be inferred. | |
ROSE_DLL_API SgVarRefExp * | buildVarRefExp (const char *varName, SgScopeStatement *scope=NULL) |
Build a variable reference using a C style char array. | |
ROSE_DLL_API SgVarRefExp * | buildVarRefExp (SgVariableSymbol *varSymbol) |
Build a variable reference from an existing symbol. | |
ROSE_DLL_API SgVarRefExp * | buildVarRefExp_nfi (SgVariableSymbol *varSymbol) |
ROSE_DLL_API SgVarRefExp * | buildVarRefExp (SgVariableDeclaration *vardecl) |
Build a variable reference from an existing variable declaration. The assumption is a SgVariableDeclartion only declares one variable in the ROSE AST. | |
ROSE_DLL_API SgVarRefExp * | buildVarRefExp (SgInitializedName *initname, SgScopeStatement *scope=NULL) |
Build a variable reference from an initialized name It first tries to grab the associated symbol, then call buildVarRefExp(const SgName& name, SgScopeStatement*) if symbol does not exist. | |
ROSE_DLL_API SgVarRefExp * | buildOpaqueVarRefExp (const std::string &varName, SgScopeStatement *scope=NULL) |
Build a variable reference expression at scope to an opaque variable which has unknown information except for its name. Used when referring to an internal variable defined in some headers of runtime libraries.(The headers are not yet inserted into the file during translation). Similar to buildOpaqueType();. | |
SgCompoundLiteralExp * | buildCompoundLiteralExp_nfi (SgVariableSymbol *varSymbol) |
Build function for compound literals (uses a SgVariableSymbol and is similar to buildVarRefExp_nfi()). | |
SgCompoundLiteralExp * | buildCompoundLiteralExp (SgVariableSymbol *varSymbol) |
Build function for compound literals (uses a SgVariableSymbol and is similar to buildVarRefExp()). | |
ROSE_DLL_API SgLabelRefExp * | buildLabelRefExp (SgLabelSymbol *s) |
Build a Fortran numeric label ref exp. | |
ROSE_DLL_API SgFunctionRefExp * | buildFunctionRefExp (const SgName &name, const SgType *func_type, SgScopeStatement *scope=NULL) |
Build SgFunctionRefExp based on a C++ function's name and function type. It will lookup symbol table internally starting from scope. A hidden prototype will be created internally to introduce a new function symbol if the function symbol cannot be found. | |
ROSE_DLL_API SgFunctionRefExp * | buildFunctionRefExp (const char *name, const SgType *func_type, SgScopeStatement *scope=NULL) |
ROSE_DLL_API SgFunctionRefExp * | buildFunctionRefExp (const SgName &name, SgScopeStatement *scope=NULL) |
Build SgFunctionRefExp based on a C function's name. It will lookup symbol table internally starting from scope and return the first matching function. | |
ROSE_DLL_API SgFunctionRefExp * | buildFunctionRefExp (const char *name, SgScopeStatement *scope=NULL) |
ROSE_DLL_API SgFunctionRefExp * | buildFunctionRefExp (const SgFunctionDeclaration *func_decl) |
Build SgFunctionRefExp based on a function's declaration. | |
ROSE_DLL_API SgFunctionRefExp * | buildFunctionRefExp (SgFunctionSymbol *sym) |
Build SgFunctionRefExp based on a function's symbol. | |
SgFunctionRefExp * | buildFunctionRefExp_nfi (SgFunctionSymbol *sym) |
SgTemplateFunctionRefExp * | buildTemplateFunctionRefExp_nfi (SgTemplateFunctionSymbol *sym) |
DQ (12/15/2011): Adding template declaration support to the AST. | |
SgTemplateMemberFunctionRefExp * | buildTemplateMemberFunctionRefExp_nfi (SgTemplateMemberFunctionSymbol *sym, bool virtual_call, bool need_qualifier) |
DQ (12/29/2011): Adding template declaration support to the AST. | |
SgMemberFunctionRefExp * | buildMemberFunctionRefExp_nfi (SgMemberFunctionSymbol *sym, bool virtual_call, bool need_qualifier) |
ROSE_DLL_API SgMemberFunctionRefExp * | buildMemberFunctionRefExp (SgMemberFunctionSymbol *sym, bool virtual_call, bool need_qualifier) |
SgClassNameRefExp * | buildClassNameRefExp_nfi (SgClassSymbol *sym) |
ROSE_DLL_API SgClassNameRefExp * | buildClassNameRefExp (SgClassSymbol *sym) |
ROSE_DLL_API SgFunctionCallExp * | buildFunctionCallExp (SgFunctionSymbol *sym, SgExprListExp *parameters=NULL) |
Build a function call expression. | |
SgFunctionCallExp * | buildFunctionCallExp_nfi (SgExpression *f, SgExprListExp *parameters=NULL) |
ROSE_DLL_API SgFunctionCallExp * | buildFunctionCallExp (SgExpression *f, SgExprListExp *parameters=NULL) |
ROSE_DLL_API SgFunctionCallExp * | buildFunctionCallExp (const SgName &name, SgType *return_type, SgExprListExp *parameters=NULL, SgScopeStatement *scope=NULL) |
Build a function call expression,it will automatically search for function symbols internally to build a right function reference etc. It tolerates the lack of the function symbol to support generating calls to library functions whose headers have not yet been inserted. | |
ROSE_DLL_API SgFunctionCallExp * | buildMemberFunctionCall (std::string className, SgExpression *objectExpression, std::string functionName, SgExprListExp *params, SgScopeStatement *scope) |
Build member function calls. | |
ROSE_DLL_API SgFunctionCallExp * | buildMemberFunctionCall (SgExpression *objectExpression, SgMemberFunctionSymbol *functionSymbol, SgExprListExp *params) |
Build member function calls. objectExpression: the variable reference expression to an object of template class instantiation: vector<int> var1;. | |
SgTypeTraitBuiltinOperator * | buildTypeTraitBuiltinOperator (SgName functionName, SgNodePtrList parameters) |
SgCudaKernelCallExp * | buildCudaKernelCallExp_nfi (SgExpression *kernel, SgExprListExp *parameters=NULL, SgCudaKernelExecConfig *config=NULL) |
Build a CUDA kernel call expression (kernel<<<config>>>(parameters)) | |
SgCudaKernelExecConfig * | buildCudaKernelExecConfig_nfi (SgExpression *grid=NULL, SgExpression *blocks=NULL, SgExpression *shared=NULL, SgExpression *stream=NULL) |
Build a CUDA kernel execution configuration (<<<grid, blocks, shared, stream>>>) | |
ROSE_DLL_API SgAssignInitializer * | buildAssignInitializer (SgExpression *operand_i=NULL, SgType *expression_type=NULL) |
Build the rhs of a variable declaration which includes an assignment. | |
ROSE_DLL_API SgAssignInitializer * | buildAssignInitializer_nfi (SgExpression *operand_i=NULL, SgType *expression_type=NULL) |
ROSE_DLL_API SgAggregateInitializer * | buildAggregateInitializer (SgExprListExp *initializers=NULL, SgType *type=NULL) |
Build an aggregate initializer. | |
ROSE_DLL_API SgAggregateInitializer * | buildAggregateInitializer_nfi (SgExprListExp *initializers, SgType *type=NULL) |
Build an aggregate initializer. | |
ROSE_DLL_API SgCompoundInitializer * | buildCompoundInitializer (SgExprListExp *initializers=NULL, SgType *type=NULL) |
Build a compound initializer, for vector type initialization. | |
ROSE_DLL_API SgCompoundInitializer * | buildCompoundInitializer_nfi (SgExprListExp *initializers, SgType *type=NULL) |
Build a compound initializer, for vector type initialization. | |
ROSE_DLL_API SgConstructorInitializer * | buildConstructorInitializer (SgMemberFunctionDeclaration *declaration, SgExprListExp *args, SgType *expression_type, bool need_name, bool need_qualifier, bool need_parenthesis_after_name, bool associated_class_unknown) |
ROSE_DLL_API SgConstructorInitializer * | buildConstructorInitializer_nfi (SgMemberFunctionDeclaration *declaration, SgExprListExp *args, SgType *expression_type, bool need_name, bool need_qualifier, bool need_parenthesis_after_name, bool associated_class_unknown) |
ROSE_DLL_API SgBracedInitializer * | buildBracedInitializer (SgExprListExp *initializers=NULL, SgType *expression_type=NULL) |
Build an braced initializer. | |
ROSE_DLL_API SgBracedInitializer * | buildBracedInitializer_nfi (SgExprListExp *initializers=NULL, SgType *expression_type=NULL) |
ROSE_DLL_API SgSizeOfOp * | buildSizeOfOp (SgExpression *exp=NULL) |
Build sizeof() expression with an expression parameter. | |
ROSE_DLL_API SgSizeOfOp * | buildSizeOfOp_nfi (SgExpression *exp) |
Build sizeof() expression with an expression parameter. | |
ROSE_DLL_API SgSizeOfOp * | buildSizeOfOp (SgType *type=NULL) |
Build sizeof() expression with a type parameter. | |
ROSE_DLL_API SgSizeOfOp * | buildSizeOfOp_nfi (SgType *type) |
Build sizeof() expression with a type parameter. | |
ROSE_DLL_API SgAlignOfOp * | buildAlignOfOp (SgExpression *exp=NULL) |
Build alignof() expression with an expression parameter. | |
ROSE_DLL_API SgAlignOfOp * | buildAlignOfOp_nfi (SgExpression *exp) |
Build alignof() expression with an expression parameter. | |
ROSE_DLL_API SgAlignOfOp * | buildAlignOfOp (SgType *type=NULL) |
Build alignof() expression with a type parameter. | |
ROSE_DLL_API SgAlignOfOp * | buildAlignOfOp_nfi (SgType *type) |
Build alignof() expression with a type parameter. | |
ROSE_DLL_API SgNoexceptOp * | buildNoexceptOp (SgExpression *exp=NULL) |
Build noexcept operator expression with an expression parameter. | |
ROSE_DLL_API SgNoexceptOp * | buildNoexceptOp_nfi (SgExpression *exp) |
Build noexcept operator expression with an expression parameter. | |
ROSE_DLL_API SgJavaInstanceOfOp * | buildJavaInstanceOfOp (SgExpression *exp=NULL, SgType *type=NULL) |
This is part of Java specific operator support. | |
ROSE_DLL_API SgTypeExpression * | buildTypeExpression (SgType *type) |
DQ (7/24/2014): Adding support for c11 generic operands. | |
ROSE_DLL_API SgFunctionParameterRefExp * | buildFunctionParameterRefExp (int parameter_number, int parameter_level) |
ROSE_DLL_API SgFunctionParameterRefExp * | buildFunctionParameterRefExp_nfi (int parameter_number, int parameter_level) |
ROSE_DLL_API SgLambdaExp * | buildLambdaExp (SgLambdaCaptureList *lambda_capture_list, SgClassDeclaration *lambda_closure_class, SgFunctionDeclaration *lambda_function) |
DQ (9/3/2014): Adding support for C++11 Lambda expressions. | |
ROSE_DLL_API SgLambdaExp * | buildLambdaExp_nfi (SgLambdaCaptureList *lambda_capture_list, SgClassDeclaration *lambda_closure_class, SgFunctionDeclaration *lambda_function) |
ROSE_DLL_API SgLambdaCapture * | buildLambdaCapture (SgExpression *capture_variable, SgExpression *source_closure_variable, SgExpression *closure_variable) |
ROSE_DLL_API SgLambdaCapture * | buildLambdaCapture_nfi (SgExpression *capture_variable, SgExpression *source_closure_variable, SgExpression *closure_variable) |
ROSE_DLL_API SgLambdaCaptureList * | buildLambdaCaptureList () |
ROSE_DLL_API SgLambdaCaptureList * | buildLambdaCaptureList_nfi () |
ROSE_DLL_API SgFoldExpression * | buildFoldExpression (SgExpression *operands, std::string operator_token_string, bool is_left_associative) |
ROSE_DLL_API SgFoldExpression * | buildFoldExpression_nfi (SgExpression *operands, std::string operator_token_string, bool is_left_associative) |
ROSE_DLL_API SgAwaitExpression * | buildAwaitExpression () |
ROSE_DLL_API SgAwaitExpression * | buildAwaitExpression_nfi () |
ROSE_DLL_API SgChooseExpression * | buildChooseExpression () |
ROSE_DLL_API SgChooseExpression * | buildChooseExpression_nfi () |
Builders for Matlab nodes | |
ROSE_DLL_API SgRangeExp * | buildRangeExp (SgExpression *start) |
Build a Matlab range expression like start:end or start:stride:end. | |
ROSE_DLL_API SgMatrixExp * | buildMatrixExp (SgExprListExp *firstRow) |
Build a Matlab Matrix. | |
ROSE_DLL_API SgMagicColonExp * | buildMagicColonExp () |
Build a Matlab colon expression : | |
ROSE_DLL_API SgMatlabForStatement * | buildMatlabForStatement (SgExpression *loop_index, SgExpression *loop_range, SgBasicBlock *loop_body) |
Build a For-loop statement for matlab. | |
Builders for Ada nodes | |
ROSE_DLL_API SgRangeExp * | buildRangeExp (SgExpression *start, SgExpression *end, SgExpression *stride) |
Builders for support nodes | |
AST high level builders for SgSupport nodes | |
ROSE_DLL_API SgInitializedName * | buildInitializedName (const SgName &name, SgType *type, SgInitializer *init=NULL) |
Initialized names are tricky, their scope vary depending on context, so scope and symbol information are not needed until the initialized name is being actually used somewhere. | |
ROSE_DLL_API SgInitializedName * | buildInitializedName (const std::string &name, SgType *type) |
Initialized names are tricky, their scope vary depending on context, so scope and symbol information are not needed until the initialized name is being actually used somewhere. | |
ROSE_DLL_API SgInitializedName * | buildInitializedName (const char *name, SgType *type) |
Initialized names are tricky, their scope vary depending on context, so scope and symbol information are not needed until the initialized name is being actually used somewhere. | |
ROSE_DLL_API SgInitializedName * | buildInitializedName_nfi (const SgName &name, SgType *type, SgInitializer *init, SgVariableDeclaration *declptr=NULL) |
Initialized names are tricky, their scope vary depending on context, so scope and symbol information are not needed until the initialized name is being actually used somewhere. | |
ROSE_DLL_API SgFunctionParameterTypeList * | buildFunctionParameterTypeList (SgFunctionParameterList *paralist) |
Build SgFunctionParameterTypeList from SgFunctionParameterList. | |
ROSE_DLL_API SgFunctionParameterTypeList * | buildFunctionParameterTypeList (SgExprListExp *expList) |
Build SgFunctionParameterTypeList from an expression list, useful when building a function call. | |
ROSE_DLL_API SgFunctionParameterTypeList * | buildFunctionParameterTypeList (SgType *type0=NULL, SgType *type1=NULL, SgType *type2=NULL, SgType *type3=NULL, SgType *type4=NULL, SgType *type5=NULL, SgType *type6=NULL, SgType *type7=NULL) |
Build an SgFunctionParameterTypeList from SgTypes. To build an. | |
Builders for statements | |
AST high level builders for SgStatement, explicit scope parameters are allowed for flexibility. Please use SageInterface::appendStatement(), prependStatement(), and insertStatement() to attach the newly built statements into an AST tree. Calling member functions like SgScopeStatement::prepend_statement() or using container functions such as pushback() is discouraged since they don't handle many side effects for symbol tables, source file information, scope and parent pointers etc. | |
ROSE_DLL_API SgVariableDeclaration * | buildVariableDeclaration (const SgName &name, SgType *type, SgInitializer *varInit=NULL, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgVariableDeclaration * | buildVariableDeclaration (const std::string &name, SgType *type, SgInitializer *varInit=NULL, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgVariableDeclaration * | buildVariableDeclaration (const char *name, SgType *type, SgInitializer *varInit=NULL, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgVariableDeclaration * | buildVariableDeclaration_nfi (const SgName &name, SgType *type, SgInitializer *varInit, SgScopeStatement *scope, bool builtFromUseOnly=false, SgStorageModifier::storage_modifier_enum sm=SgStorageModifier::e_default) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgVariableDefinition * | buildVariableDefinition_nfi (SgVariableDeclaration *decl, SgInitializedName *init_name, SgInitializer *init) |
Build variable definition. | |
ROSE_DLL_API SgTemplateVariableDeclaration * | buildTemplateVariableDeclaration_nfi (const SgName &name, SgType *type, SgInitializer *varInit, SgScopeStatement *scope) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateVariableDeclaration * | buildTemplateVariableDeclaration (const SgName &name, SgType *type, SgInitializer *varInit, SgScopeStatement *scope) |
Build template variable declarations. | |
ROSE_DLL_API SgTemplateVariableInstantiation * | buildTemplateVariableInstantiation_nfi (const SgName &name, SgType *type, SgInitializer *varInit, SgScopeStatement *scope, SgTemplateVariableDeclaration *tpl_decl, SgTemplateArgumentPtrList &tpl_args) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateVariableInstantiation * | buildTemplateVariableInstantiation (const SgName &name, SgType *type, SgInitializer *varInit, SgScopeStatement *scope, SgTemplateVariableDeclaration *tpl_decl, SgTemplateArgumentPtrList &tpl_args) |
Build template variable declarations. | |
ROSE_DLL_API SgTypedefDeclaration * | buildTypedefDeclaration (const std::string &name, SgType *base_type, SgScopeStatement *scope=NULL, bool has_defining_base=false) |
Build a typedef declaration, such as: typedef int myint; typedef struct A {..} s_A;. | |
ROSE_DLL_API SgTypedefDeclaration * | buildTypedefDeclaration_nfi (const std::string &name, SgType *base_type, SgScopeStatement *scope=NULL, bool has_defining_base=false) |
Build a typedef declaration, such as: typedef int myint;. | |
ROSE_DLL_API SgTemplateTypedefDeclaration * | buildTemplateTypedefDeclaration_nfi (const SgName &name, SgType *base_type, SgScopeStatement *scope=NULL, bool has_defining_base=false) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateInstantiationTypedefDeclaration * | buildTemplateInstantiationTypedefDeclaration_nfi (SgName &name, SgType *base_type, SgScopeStatement *scope, bool has_defining_base, SgTemplateTypedefDeclaration *templateTypedefDeclaration, SgTemplateArgumentPtrList &templateArgumentsList) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgFunctionParameterList * | buildFunctionParameterList (SgInitializedName *in1=NULL, SgInitializedName *in2=NULL, SgInitializedName *in3=NULL, SgInitializedName *in4=NULL, SgInitializedName *in5=NULL, SgInitializedName *in6=NULL, SgInitializedName *in7=NULL, SgInitializedName *in8=NULL, SgInitializedName *in9=NULL, SgInitializedName *in10=NULL) |
Build an empty SgFunctionParameterList, possibly with some initialized names filled in. | |
SgFunctionParameterList * | buildFunctionParameterList_nfi () |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgFunctionParameterList * | buildFunctionParameterList (SgFunctionParameterTypeList *paraTypeList) |
Build an SgFunctionParameterList from SgFunctionParameterTypeList, like (int, float,...), used for parameter list of prototype functions when function type( including parameter type list) is known. | |
ROSE_DLL_API SgFunctionParameterList * | buildFunctionParameterList_nfi (SgFunctionParameterTypeList *paraTypeList) |
Build a variable declaration, handle symbol table transparently. | |
SgCtorInitializerList * | buildCtorInitializerList_nfi () |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API void | setTemplateNameInTemplateInstantiations (SgFunctionDeclaration *func, const SgName &name) |
DQ (2/11/2012): Added support to set the template name in function template instantiations (member and non-member). | |
ROSE_DLL_API void | setTemplateArgumentParents (SgDeclarationStatement *decl) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API void | testTemplateArgumentParents (SgDeclarationStatement *decl) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateArgumentPtrList * | getTemplateArgumentList (SgDeclarationStatement *decl) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API void | testTemplateParameterParents (SgDeclarationStatement *decl) |
DQ (9/16/2012): Added function to support setting the template parameters and setting their parents (and for any relevant declaration). | |
ROSE_DLL_API void | setTemplateParameterParents (SgDeclarationStatement *decl) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateParameterPtrList * | getTemplateParameterList (SgDeclarationStatement *decl) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API void | setTemplateArgumentsInDeclaration (SgDeclarationStatement *decl, SgTemplateArgumentPtrList *templateArgumentsList_input) |
DQ (9/16/2012): Added function to support setting the template arguments and setting their parents (and for any relevant declaration). | |
ROSE_DLL_API void | setTemplateSpecializationArgumentsInDeclaration (SgDeclarationStatement *decl, SgTemplateArgumentPtrList *templateSpecializationArgumentsList_input) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API void | setTemplateParametersInDeclaration (SgDeclarationStatement *decl, SgTemplateParameterPtrList *templateParametersList_input) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgFunctionDeclaration * | buildNondefiningFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, SgScopeStatement *scope=NULL, SgExprListExp *decoratorList=NULL, bool buildTemplateInstantiation=false, SgTemplateArgumentPtrList *templateArgumentsList=NULL, SgStorageModifier::storage_modifier_enum sm=SgStorageModifier::e_default) |
Build a prototype for a function, handle function type, symbol etc transparently. | |
ROSE_DLL_API SgFunctionDeclaration * | buildNondefiningFunctionDeclaration (const SgFunctionDeclaration *funcdecl, SgScopeStatement *scope=NULL, SgExprListExp *decoratorList=NULL) |
Build a prototype for an existing function declaration (defining or nondefining is fine) | |
ROSE_DLL_API SgTemplateFunctionDeclaration * | buildNondefiningTemplateFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, SgScopeStatement *scope=NULL, SgExprListExp *decoratorList=NULL, SgTemplateParameterPtrList *templateParameterList=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateFunctionDeclaration * | buildDefiningTemplateFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, SgScopeStatement *scope, SgExprListExp *decoratorList, SgTemplateFunctionDeclaration *first_nondefining_declaration) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgMemberFunctionDeclaration * | buildDefaultConstructor (SgClassType *classType) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgMemberFunctionDeclaration * | buildNondefiningMemberFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, SgScopeStatement *scope, SgExprListExp *decoratorList, unsigned int functionConstVolatileFlags, bool buildTemplateInstantiation, SgTemplateArgumentPtrList *templateArgumentsList) |
Build a prototype member function declaration. | |
ROSE_DLL_API SgTemplateMemberFunctionDeclaration * | buildNondefiningTemplateMemberFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, SgScopeStatement *scope, SgExprListExp *decoratorList, unsigned int functionConstVolatileFlags, SgTemplateParameterPtrList *templateParameterList) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateMemberFunctionDeclaration * | buildDefiningTemplateMemberFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, SgScopeStatement *scope, SgExprListExp *decoratorList, unsigned int functionConstVolatileFlags, SgTemplateMemberFunctionDeclaration *first_nondefing_declaration) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgMemberFunctionDeclaration * | buildDefiningMemberFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, SgScopeStatement *scope, SgExprListExp *decoratorList, bool buildTemplateInstantiation, unsigned int functionConstVolatileFlags, SgMemberFunctionDeclaration *first_nondefinng_declaration, SgTemplateArgumentPtrList *templateArgumentsList) |
Build a defining ( non-prototype) member function declaration. | |
ROSE_DLL_API SgMemberFunctionDeclaration * | buildNondefiningMemberFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parameter_list, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgMemberFunctionDeclaration * | buildDefiningMemberFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parameter_list, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgFunctionDeclaration * | buildDefiningFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parlist, SgScopeStatement *scope, SgExprListExp *decoratorList, bool buildTemplateInstantiation=false, SgFunctionDeclaration *first_nondefinng_declaration=NULL, SgTemplateArgumentPtrList *templateArgumentsList=NULL) |
Build a function declaration with a function body. | |
ROSE_DLL_API SgFunctionDeclaration * | buildDefiningFunctionDeclaration (const SgName &name, SgType *return_type, SgFunctionParameterList *parameter_list, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgProcedureHeaderStatement * | buildProcedureHeaderStatement (const SgName &name, SgType *return_type, SgFunctionParameterList *parameter_list, SgProcedureHeaderStatement::subprogram_kind_enum, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgProcedureHeaderStatement * | buildProcedureHeaderStatement (const char *name, SgType *return_type, SgFunctionParameterList *parlist, SgProcedureHeaderStatement::subprogram_kind_enum, SgScopeStatement *scope, SgProcedureHeaderStatement *first_nondefining_declaration) |
Build a Fortran subroutine or procedure. | |
ROSE_DLL_API SgProcedureHeaderStatement * | buildNondefiningProcedureHeaderStatement (const SgName &name, SgType *return_type, SgFunctionParameterList *param_list, SgProcedureHeaderStatement::subprogram_kind_enum, SgScopeStatement *scope=NULL) |
Build a nondefining SgProcedureHeaderStatement, handle function type, symbol etc transparently. | |
ROSE_DLL_API SgExprStatement * | buildFunctionCallStmt (const SgName &name, SgType *return_type, SgExprListExp *parameters=NULL, SgScopeStatement *scope=NULL) |
Build a regular function call statement. | |
ROSE_DLL_API SgExprStatement * | buildFunctionCallStmt (SgExpression *function, SgExprListExp *parameters=NULL) |
Build a function call statement using function expression and argument list only, like (*funcPtr)(args);. | |
ROSE_DLL_API SgLabelStatement * | buildLabelStatement (const SgName &name, SgStatement *stmt=NULL, SgScopeStatement *scope=NULL) |
Build a label statement, name is the label's name. Handling label symbol and scope internally. | |
SgLabelStatement * | buildLabelStatement_nfi (const SgName &name, SgStatement *stmt, SgScopeStatement *scope) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgGotoStatement * | buildGotoStatement (SgLabelStatement *label=NULL) |
Build a goto statement. | |
SgGotoStatement * | buildGotoStatement_nfi (SgLabelStatement *label) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgGotoStatement * | buildGotoStatement (SgLabelSymbol *symbol) |
Build a goto statement from a label symbol, supporting both C/C++ and Fortran cases. | |
SgGotoStatement * | buildGotoStatement_nfi (SgExpression *expr) |
Build a goto statement from a label expression, supporting only C/C++ and not Fortran cases. | |
ROSE_DLL_API SgCaseOptionStmt * | buildCaseOptionStmt (SgExpression *key=NULL, SgStatement *body=NULL) |
Build a case option statement. | |
SgCaseOptionStmt * | buildCaseOptionStmt_nfi (SgExpression *key, SgStatement *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgDefaultOptionStmt * | buildDefaultOptionStmt (SgStatement *body=NULL) |
Build a default option statement. | |
SgDefaultOptionStmt * | buildDefaultOptionStmt_nfi (SgStatement *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgExprStatement * | buildExprStatement (SgExpression *exp=NULL) |
Build a SgExprStatement, set File_Info automatically. | |
SgExprStatement * | buildExprStatement_nfi (SgExpression *exp) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgStatementExpression * | buildStatementExpression (SgStatement *exp) |
Build a GNU statement expression. | |
ROSE_DLL_API SgStatementExpression * | buildStatementExpression_nfi (SgStatement *exp) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgSwitchStatement * | buildSwitchStatement (SgStatement *item_selector=NULL, SgStatement *body=NULL) |
Build a switch statement. | |
SgSwitchStatement * | buildSwitchStatement (SgExpression *item_selector, SgStatement *body=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgSwitchStatement * | buildSwitchStatement_nfi (SgStatement *item_selector, SgStatement *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgIfStmt * | buildIfStmt (SgStatement *conditional, SgStatement *true_body, SgStatement *false_body) |
Build if statement. | |
SgIfStmt * | buildIfStmt (SgExpression *conditional, SgStatement *true_body, SgStatement *false_body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgIfStmt * | buildIfStmt_nfi (SgStatement *conditional, SgStatement *true_body, SgStatement *false_body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgFortranDo * | buildFortranDo (SgExpression *initialization, SgExpression *bound, SgExpression *increment, SgBasicBlock *) |
Build a Fortran do construct. | |
ROSE_DLL_API SgFortranDo * | buildFortranDo_nfi (SgExpression *initialization, SgExpression *bound, SgExpression *increment, SgBasicBlock *) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgForInitStatement * | buildForInitStatement () |
Build a for init statement. | |
ROSE_DLL_API SgForInitStatement * | buildForInitStatement (const SgStatementPtrList &statements) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgForInitStatement * | buildForInitStatement_nfi (SgStatementPtrList &statements) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgForInitStatement * | buildForInitStatement (SgStatement *statement) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgForStatement * | buildForStatement (SgStatement *initialize_stmt, SgStatement *test, SgExpression *increment, SgStatement *loop_body, SgStatement *else_body=NULL) |
Build a for statement, assume none of the arguments is NULL. | |
ROSE_DLL_API SgForStatement * | buildForStatement_nfi (SgStatement *initialize_stmt, SgStatement *test, SgExpression *increment, SgStatement *loop_body, SgStatement *else_body=NULL) |
Based on the contribution from Pradeep Srinivasa@ LANL. | |
ROSE_DLL_API SgForStatement * | buildForStatement_nfi (SgForInitStatement *init_stmt, SgStatement *test, SgExpression *increment, SgStatement *loop_body, SgStatement *else_body=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API void | buildForStatement_nfi (SgForStatement *result, SgForInitStatement *init_stmt, SgStatement *test, SgExpression *increment, SgStatement *loop_body, SgStatement *else_body=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgRangeBasedForStatement * | buildRangeBasedForStatement_nfi (SgVariableDeclaration *initializer, SgVariableDeclaration *range, SgVariableDeclaration *begin_declaration, SgVariableDeclaration *end_declaration, SgExpression *not_equal_expression, SgExpression *increment_expression, SgStatement *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API void | buildDoWhileStatement_nfi (SgDoWhileStmt *result, SgStatement *body, SgStatement *condition) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgUpcForAllStatement * | buildUpcForAllStatement_nfi (SgStatement *initialize_stmt, SgStatement *test, SgExpression *increment, SgExpression *affinity, SgStatement *loop_body) |
Build a UPC forall statement. | |
ROSE_DLL_API SgUpcForAllStatement * | buildUpcForAllStatement_nfi (SgForInitStatement *init_stmt, SgStatement *test, SgExpression *increment, SgExpression *affinity, SgStatement *loop_body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgUpcNotifyStatement * | buildUpcNotifyStatement_nfi (SgExpression *exp) |
Build a UPC notify statement. | |
ROSE_DLL_API SgUpcWaitStatement * | buildUpcWaitStatement_nfi (SgExpression *exp) |
Build a UPC wait statement. | |
ROSE_DLL_API SgUpcBarrierStatement * | buildUpcBarrierStatement_nfi (SgExpression *exp) |
Build a UPC barrier statement. | |
ROSE_DLL_API SgUpcFenceStatement * | buildUpcFenceStatement_nfi () |
Build a UPC fence statement. | |
ROSE_DLL_API SgWhileStmt * | buildWhileStmt (SgStatement *condition, SgStatement *body, SgStatement *else_body=NULL) |
Build while statement. | |
SgWhileStmt * | buildWhileStmt (SgExpression *condition, SgStatement *body, SgStatement *else_body=NULL) |
Build a variable declaration, handle symbol table transparently. | |
SgWhileStmt * | buildWhileStmt_nfi (SgStatement *condition, SgStatement *body, SgStatement *else_body=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgWithStatement * | buildWithStatement (SgExpression *expr, SgStatement *body) |
Build a with statement. | |
SgWithStatement * | buildWithStatement_nfi (SgExpression *expr, SgStatement *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgDoWhileStmt * | buildDoWhileStmt (SgStatement *body, SgStatement *condition) |
Build do-while statement. | |
SgDoWhileStmt * | buildDoWhileStmt (SgStatement *body, SgExpression *condition) |
Build a variable declaration, handle symbol table transparently. | |
SgDoWhileStmt * | buildDoWhileStmt_nfi (SgStatement *body, SgStatement *condition) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgPragmaDeclaration * | buildPragmaDeclaration (const std::string &name, SgScopeStatement *scope=NULL) |
Build pragma declaration, handle SgPragma and defining/nondefining pointers internally. | |
SgPragmaDeclaration * | buildPragmaDeclaration_nfi (const std::string &name, SgScopeStatement *scope) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgPragma * | buildPragma (const std::string &name) |
Build SgPragma. | |
ROSE_DLL_API SgEmptyDeclaration * | buildEmptyDeclaration () |
Build an empty declaration (useful for adding precission to comments and CPP handling under token-based unparsing). | |
ROSE_DLL_API SgBasicBlock * | buildBasicBlock (SgStatement *stmt1=NULL, SgStatement *stmt2=NULL, SgStatement *stmt3=NULL, SgStatement *stmt4=NULL, SgStatement *stmt5=NULL, SgStatement *stmt6=NULL, SgStatement *stmt7=NULL, SgStatement *stmt8=NULL, SgStatement *stmt9=NULL, SgStatement *stmt10=NULL) |
Build a SgBasicBlock, setting file info internally. | |
ROSE_DLL_API SgBasicBlock * | buildBasicBlock_nfi () |
Build a variable declaration, handle symbol table transparently. | |
SgBasicBlock * | buildBasicBlock_nfi (const std::vector< SgStatement * > &) |
Build a variable declaration, handle symbol table transparently. | |
SgBasicBlock * | buildBasicBlock_nfi (SgScopeStatement *parent) |
Build a SgBasicBlock and set its parent. This function does NOT link the parent scope to the block. | |
ROSE_DLL_API SgExprStatement * | buildAssignStatement (SgExpression *lhs, SgExpression *rhs) |
Build an assignment statement from lefthand operand and right hand operand. | |
ROSE_DLL_API SgExprStatement * | buildAssignStatement_ast_translate (SgExpression *lhs, SgExpression *rhs) |
This version does not recursively reset the file info as a transformation. | |
ROSE_DLL_API SgBreakStmt * | buildBreakStmt () |
Build a break statement. | |
SgBreakStmt * | buildBreakStmt_nfi () |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgContinueStmt * | buildContinueStmt () |
Build a continue statement. | |
SgContinueStmt * | buildContinueStmt_nfi () |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgFortranContinueStmt * | buildFortranContinueStmt () |
Build a Fortran continue statement. | |
SgFortranContinueStmt * | buildFortranContinueStmt_nfi () |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgPassStatement * | buildPassStatement () |
Build a pass statement. | |
SgPassStatement * | buildPassStatement_nfi () |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgAssertStmt * | buildAssertStmt (SgExpression *test) |
Build a Assert statement. | |
ROSE_DLL_API SgAssertStmt * | buildAssertStmt (SgExpression *test, SgExpression *exceptionArgument) |
Build a variable declaration, handle symbol table transparently. | |
SgAssertStmt * | buildAssertStmt_nfi (SgExpression *test) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgYieldExpression * | buildYieldExpression (SgExpression *value) |
Build a yield statement. | |
SgYieldExpression * | buildYieldExpression_nfi (SgExpression *value) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgKeyDatumPair * | buildKeyDatumPair (SgExpression *key, SgExpression *datum) |
Build a key-datum pair. | |
SgKeyDatumPair * | buildKeyDatumPair_nfi (SgExpression *key, SgExpression *datum) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgDictionaryExp * | buildDictionaryExp (std::vector< SgKeyDatumPair * > pairs) |
Build a list of key-datum pairs. | |
SgDictionaryExp * | buildDictionaryExp_nfi (std::vector< SgKeyDatumPair * > pairs) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgActualArgumentExpression * | buildActualArgumentExpression (SgName arg_name, SgExpression *arg) |
Build an Actual Argument Expression. | |
SgActualArgumentExpression * | buildActualArgumentExpression_nfi (SgName arg_name, SgExpression *arg) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgDeleteExp * | buildDeleteExp (SgExpression *target, bool is_array=false, bool need_global_specifier=false, SgFunctionDeclaration *deleteOperatorDeclaration=NULL) |
Build a delete statement. | |
SgDeleteExp * | buildDeleteExp_nfi (SgExpression *target, bool is_array=false, bool need_global_specifier=false, SgFunctionDeclaration *deleteOperatorDeclaration=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgDeclarationScope * | buildDeclarationScope () |
Build a scope statement. Used to build SgNonrealDecl and SgNonrealType. | |
ROSE_DLL_API SgClassDefinition * | buildClassDefinition (SgClassDeclaration *d=NULL, bool buildTemplateInstantiation=false) |
Build a class definition scope statement. | |
SgClassDefinition * | buildClassDefinition_nfi (SgClassDeclaration *d=NULL, bool buildTemplateInstantiation=false) |
Build a class definition scope statement. | |
SgTemplateClassDefinition * | buildTemplateClassDefinition (SgTemplateClassDeclaration *d=NULL) |
Build a template class definition statement. | |
ROSE_DLL_API SgClassDeclaration * | buildNondefiningClassDeclaration_nfi (const SgName &name, SgClassDeclaration::class_types kind, SgScopeStatement *scope, bool buildTemplateInstantiation, SgTemplateArgumentPtrList *templateArgumentsList) |
Build a structure first nondefining declaration, without file info. | |
ROSE_DLL_API SgTemplateClassDeclaration * | buildNondefiningTemplateClassDeclaration_nfi (const SgName &name, SgClassDeclaration::class_types kind, SgScopeStatement *scope, SgTemplateParameterPtrList *templateParameterList, SgTemplateArgumentPtrList *templateSpecializationArgumentList) |
DQ (11/29/2011): Adding template declaration support to the AST. | |
ROSE_DLL_API SgTemplateClassDeclaration * | buildNondefiningTemplateClassDeclaration (const SgName &name, SgClassDeclaration::class_types kind, SgScopeStatement *scope, SgTemplateParameterPtrList *templateParameterList, SgTemplateArgumentPtrList *templateSpecializationArgumentList) |
buildNondefiningTemplateClassDeclaration() | |
ROSE_DLL_API SgClassDeclaration * | buildNondefiningClassDeclaration (SgName name, SgScopeStatement *scope) |
DQ (11/7/2009): Added functions to build C++ class. | |
ROSE_DLL_API SgClassDeclaration * | buildDefiningClassDeclaration (SgName name, SgScopeStatement *scope) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgClassDeclaration * | buildClassDeclaration (SgName name, SgScopeStatement *scope) |
Build C++ class (builds both the non-defining and defining declarations; in that order). | |
ROSE_DLL_API SgEnumDeclaration * | buildNondefiningEnumDeclaration_nfi (const SgName &name, SgScopeStatement *scope) |
Build an enum first nondefining declaration, without file info. | |
ROSE_DLL_API SgClassDeclaration * | buildStructDeclaration (const SgName &name, SgScopeStatement *scope=NULL) |
Build a structure, It is also a declaration statement in SAGE III. | |
ROSE_DLL_API SgClassDeclaration * | buildStructDeclaration (const std::string &name, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgClassDeclaration * | buildStructDeclaration (const char *name, SgScopeStatement *scope=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgStmtDeclarationStatement * | buildStmtDeclarationStatement (SgStatement *stmt) |
Build a StmtDeclarationStmt. | |
ROSE_DLL_API SgStmtDeclarationStatement * | buildStmtDeclarationStatement_nfi (SgStatement *stmt) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgNamespaceDeclarationStatement * | buildNamespaceDeclaration (const SgName &name, SgScopeStatement *scope=NULL) |
tps (09/02/2009) : Added support for building namespaces | |
ROSE_DLL_API SgNamespaceDeclarationStatement * | buildNamespaceDeclaration_nfi (const SgName &name, bool unnamednamespace, SgScopeStatement *scope) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgNamespaceDefinitionStatement * | buildNamespaceDefinition (SgNamespaceDeclarationStatement *d=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgNamespaceAliasDeclarationStatement * | buildNamespaceAliasDeclarationStatement (const SgName &name, SgNamespaceDeclarationStatement *namespaceDeclaration) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgNaryComparisonOp * | buildNaryComparisonOp (SgExpression *lhs) |
driscoll6 (7/20/11) : Support n-ary operators for python | |
ROSE_DLL_API SgNaryComparisonOp * | buildNaryComparisonOp_nfi (SgExpression *lhs) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgNaryBooleanOp * | buildNaryBooleanOp (SgExpression *lhs) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgNaryBooleanOp * | buildNaryBooleanOp_nfi (SgExpression *lhs) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgStringConversion * | buildStringConversion (SgExpression *exp) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgStringConversion * | buildStringConversion_nfi (SgExpression *exp) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgClassDeclaration * | buildClassDeclaration_nfi (const SgName &name, SgClassDeclaration::class_types kind, SgScopeStatement *scope, SgClassDeclaration *nonDefiningDecl, bool buildTemplateInstantiation, SgTemplateArgumentPtrList *templateArgumentsList) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateClassDeclaration * | buildTemplateClassDeclaration_nfi (const SgName &name, SgClassDeclaration::class_types kind, SgScopeStatement *scope, SgTemplateClassDeclaration *nonDefiningDecl, SgTemplateParameterPtrList *templateParameterList, SgTemplateArgumentPtrList *templateSpecializationArgumentList) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTemplateClassDeclaration * | buildTemplateClassDeclaration (const SgName &name, SgClassDeclaration::class_types kind, SgScopeStatement *scope, SgTemplateClassDeclaration *nonDefiningDecl, SgTemplateParameterPtrList *templateParameterList, SgTemplateArgumentPtrList *templateSpecializationArgumentList) |
Build tempplate class declaration. | |
ROSE_DLL_API SgJovialDefineDeclaration * | buildJovialDefineDeclaration_nfi (const SgName &name, const std::string ¶ms, const std::string &def_string, SgScopeStatement *scope=NULL) |
Build a Jovial define directive declaration statement. | |
ROSE_DLL_API SgJovialForThenStatement * | buildJovialForThenStatement_nfi () |
Build a Jovial loop statement. | |
ROSE_DLL_API SgDerivedTypeStatement * | buildDerivedTypeStatement (const SgName &name, SgScopeStatement *scope=NULL) |
Build an SgDerivedTypeStatement Fortran derived type declaration with a class declaration and definition (creating both the defining and nondefining declarations as required). | |
ROSE_DLL_API SgModuleStatement * | buildModuleStatement (const SgName &name, SgScopeStatement *scope) |
Build a Fortran module declaration. | |
ROSE_DLL_API SgJovialTableStatement * | buildJovialTableStatement (const SgName &name, SgClassDeclaration::class_types kind, SgScopeStatement *scope=NULL) |
Build a Jovial table declaration statement. | |
ROSE_DLL_API SgJovialTableType * | buildJovialTableType (const SgName &name, SgType *base_type, SgExprListExp *dim_info, SgScopeStatement *scope=NULL) |
Build a Jovial table type with required class definition and defining and nondefining declarations. | |
template<class DeclClass > | |
ROSE_DLL_API DeclClass * | buildClassDeclarationStatement_nfi (const SgName &name, SgClassDeclaration::class_types kind, SgScopeStatement *scope=NULL, SgClassDeclaration *nonDefiningDecl=NULL) |
Build a generic class declaration statement (SgClassDeclaration or subclass) with a class declaration and definition (creating both the defining and nondefining declarations as required. | |
ROSE_DLL_API SgEnumDeclaration * | buildEnumDeclaration (const SgName &name, SgScopeStatement *scope=NULL) |
Build an enum, It is also a declaration statement in SAGE III. | |
ROSE_DLL_API SgEnumDeclaration * | buildEnumDeclaration_nfi (const SgName &name, SgScopeStatement *scope=NULL) |
Build an enum, It is also a declaration statement in SAGE III. | |
ROSE_DLL_API SgReturnStmt * | buildReturnStmt (SgExpression *expression=NULL) |
Build a return statement. | |
ROSE_DLL_API SgReturnStmt * | buildReturnStmt_nfi (SgExpression *expression) |
Build a return statement. | |
ROSE_DLL_API SgNullStatement * | buildNullStatement () |
Build a NULL statement. | |
SgNullStatement * | buildNullStatement_nfi () |
Build a NULL statement. | |
ROSE_DLL_API SgAttributeSpecificationStatement * | buildAttributeSpecificationStatement (SgAttributeSpecificationStatement::attribute_spec_enum kind) |
Build Fortran attribute specification statement. | |
ROSE_DLL_API SgFortranIncludeLine * | buildFortranIncludeLine (std::string filename) |
Build Fortran include line. | |
ROSE_DLL_API SgCommonBlockObject * | buildCommonBlockObject (std::string name="", SgExprListExp *exp_list=NULL) |
Build a Fortran common block, possibly with a name. | |
ROSE_DLL_API SgCommonBlock * | buildCommonBlock (SgCommonBlockObject *first_block=NULL) |
Build a Fortran Common statement. | |
ROSE_DLL_API SgCatchOptionStmt * | buildCatchOptionStmt (SgVariableDeclaration *condition=NULL, SgStatement *body=NULL) |
Build a catch statement. | |
ROSE_DLL_API SgAsyncStmt * | buildAsyncStmt (SgBasicBlock *body) |
MH (6/10/2014): Added async support. | |
ROSE_DLL_API SgFinishStmt * | buildFinishStmt (SgBasicBlock *body) |
MH (6/11/2014): Added finish support. | |
ROSE_DLL_API SgAtStmt * | buildAtStmt (SgExpression *expression, SgBasicBlock *body) |
MH (6/11/2014): Added at support. | |
ROSE_DLL_API SgAtomicStmt * | buildAtomicStmt (SgBasicBlock *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgWhenStmt * | buildWhenStmt (SgExpression *expression, SgBasicBlock *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgAtExp * | buildAtExp (SgExpression *expression, SgBasicBlock *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgFinishExp * | buildFinishExp (SgExpression *expression, SgBasicBlock *body) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgHereExp * | buildHereExpression () |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgDotDotExp * | buildDotDotExp () |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgTryStmt * | buildTryStmt (SgStatement *body, SgCatchOptionStmt *catch0=NULL, SgCatchOptionStmt *catch1=NULL, SgCatchOptionStmt *catch2=NULL, SgCatchOptionStmt *catch3=NULL, SgCatchOptionStmt *catch4=NULL) |
Build a try statement. | |
ROSE_DLL_API SgTryStmt * | buildTryStmt (SgBasicBlock *try_body, SgBasicBlock *finally_body=NULL) |
Build a try statement. | |
ROSE_DLL_API SgCatchStatementSeq * | buildCatchStatementSeq (SgCatchOptionStmt *=NULL) |
Build an initial sequence of Catch blocks containing 0 or 1 element. | |
ROSE_DLL_API SgJavaSynchronizedStatement * | buildJavaSynchronizedStatement (SgExpression *, SgBasicBlock *) |
Build a Java Synchronized statement. | |
ROSE_DLL_API SgJavaThrowStatement * | buildJavaThrowStatement (SgThrowOp *) |
Build a Java Throw statement. | |
ROSE_DLL_API SgJavaForEachStatement * | buildJavaForEachStatement (SgVariableDeclaration *=NULL, SgExpression *=NULL, SgStatement *=NULL) |
Build a Java Foreach statement. | |
ROSE_DLL_API SgJavaLabelStatement * | buildJavaLabelStatement (const SgName &, SgStatement *=NULL) |
Build a Java Label statement. | |
ROSE_DLL_API SgExecStatement * | buildExecStatement (SgExpression *executable, SgExpression *globals=NULL, SgExpression *locals=NULL) |
Build an exec statement. | |
SgExecStatement * | buildExecStatement_nfi (SgExpression *executable, SgExpression *globals=NULL, SgExpression *locals=NULL) |
Build an exec stmt. | |
ROSE_DLL_API SgPythonPrintStmt * | buildPythonPrintStmt (SgExpression *dest=NULL, SgExprListExp *values=NULL) |
Build a python print statement. | |
SgPythonPrintStmt * | buildPythonPrintStmt_nfi (SgExpression *dest=NULL, SgExprListExp *values=NULL) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgPythonGlobalStmt * | buildPythonGlobalStmt (SgInitializedNamePtrList &names) |
Build a python global statement. | |
SgPythonGlobalStmt * | buildPythonGlobalStmt_nfi (SgInitializedNamePtrList &names) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgAsmStmt * | buildAsmStatement (std::string s) |
Build a NULL statement. | |
SgAsmStmt * | buildAsmStatement_nfi (std::string s) |
Build an asm statement. | |
ROSE_DLL_API SgAsmStmt * | buildMultibyteNopStatement (int n) |
DQ (4/30/2010): Added support for building nop statement using asm statement Building nop statement using asm statement. | |
ROSE_DLL_API SgBaseClass * | buildBaseClass (SgClassDeclaration *classDeclaration, SgClassDefinition *classDefinition, bool isVirtual, bool isDirect) |
DQ (5/6/2013): Added build functions to support SgBaseClass construction. | |
ROSE_DLL_API SgNonrealBaseClass * | buildNonrealBaseClass (SgNonrealDecl *classDeclaration, SgClassDefinition *classDefinition, bool isVirtual, bool isDirect) |
Build a variable declaration, handle symbol table transparently. | |
ROSE_DLL_API SgStaticAssertionDeclaration * | buildStaticAssertionDeclaration (SgExpression *condition, const SgName &string_literal) |
DQ (7/25/2014): Adding support for C11 static assertions. | |
ROSE_DLL_API SgMicrosoftAttributeDeclaration * | buildMicrosoftAttributeDeclaration (const SgName &name) |
DQ (8/17/2014): Adding support for Microsoft MSVC specific attributes. | |
ROSE_DLL_API SgStatement * | buildStatementFromString (const std::string &stmt_str, SgScopeStatement *scope) |
Liao (9/18/2015): experimental support of building a statement from a string. | |
ROSE_DLL_API SgUsingDirectiveStatement * | buildUsingDirectiveStatement (SgNamespaceDeclarationStatement *ns_decl) |
Build a using directive statement. | |
Builders for others | |
AST high level builders for others | |
ROSE_DLL_API SgFile * | buildFile (const std::string &inputFileName, const std::string &outputFileName, SgProject *project=NULL, bool clear_globalScopeAcrossFiles=false) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgSourceFile * | buildSourceFile (const std::string &outputFileName, SgProject *project=NULL, bool clear_globalScopeAcrossFiles=false) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgSourceFile * | buildSourceFile (const std::string &inputFileName, const std::string &outputFileName, SgProject *project, bool clear_globalScopeAcrossFiles=false) |
Build a SgSourceFile node and attach it to SgProject. | |
ROSE_DLL_API void | fixupSourcePositionFileSpecification (SgNode *subtreeRoot, const std::string &newFileName) |
Change the source file associated with the source position information in the AST. | |
ROSE_DLL_API void | fixupSharingSourcePosition (SgNode *subtreeRoot, int new_file_id) |
Sharing IR nodes requires that the file id be added to the fileIDsToUnparse held in the Sg_File_Info object. | |
ROSE_DLL_API PreprocessingInfo * | buildComment (SgLocatedNode *target, const std::string &content, PreprocessingInfo::RelativePositionType position=PreprocessingInfo::before, PreprocessingInfo::DirectiveType dtype=PreprocessingInfo::CpreprocessorUnknownDeclaration) |
Build and attach a comment, comment style is inferred from the language type of the target node if not provided. It is indeed a wrapper of SageInterface::attachComment(). | |
ROSE_DLL_API PreprocessingInfo * | buildCpreprocessorDefineDeclaration (SgLocatedNode *target, const std::string &content, PreprocessingInfo::RelativePositionType position=PreprocessingInfo::before) |
Build and attach #define XX directives, pass "#define xxx xxx" as content. | |
ROSE_DLL_API PreprocessingInfo * | buildHeader (const std::string &header_filename, PreprocessingInfo::RelativePositionType position=PreprocessingInfo::before, bool isSystemHeader=false) |
Build a dangling #include "x.h" header, insertHeader() is needed to actually insert it. | |
ROSE_DLL_API AbstractHandle::abstract_handle * | buildAbstractHandle (SgNode *n) |
Build an abstract handle from a SgNode. | |
ROSE_DLL_API SgEquivalenceStatement * | buildEquivalenceStatement (SgExpression *lhs, SgExpression *rhs) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API void | fixupCopyOfAstFromSeparateFileInNewTargetAst (SgStatement *insertionPoint, bool insertionPointIsScope, SgStatement *toInsert, SgStatement *original_before_copy) |
Fixup any AST moved from one file two another (references to symbols, types, etc.). | |
ROSE_DLL_API void | fixupCopyOfNodeFromSeparateFileInNewTargetAst (SgStatement *insertionPoint, bool insertionPointIsScope, SgNode *node_copy, SgNode *node_original) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgType * | getTargetFileTypeSupport (SgType *snippet_type, SgScopeStatement *targetScope) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgType * | getTargetFileType (SgType *snippet_type, SgScopeStatement *targetScope) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgSymbol * | findAssociatedSymbolInTargetAST (SgDeclarationStatement *snippet_declaration, SgScopeStatement *targetScope) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgDeclarationStatement * | findAssociatedDeclarationInTargetAST (SgDeclarationStatement *snippet_declaration, SgScopeStatement *targetScope) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API void | errorCheckingTargetAST (SgNode *node_copy, SgNode *node_original, SgFile *targetFile, bool failOnWarning) |
Error checking the inserted snippet AST. | |
ROSE_DLL_API SgVarRefExp * | buildJavaArrayLengthVarRefExp () |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgScopeStatement * | buildScopeStatement (SgClassDefinition *=NULL) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaTypeExpression * | buildJavaTypeExpression (SgType *) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaMarkerAnnotation * | buildJavaMarkerAnnotation (SgType *) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaMemberValuePair * | buildJavaMemberValuePair (const SgName &, SgExpression *) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaSingleMemberAnnotation * | buildJavaSingleMemberAnnotation (SgType *, SgExpression *) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaNormalAnnotation * | buildJavaNormalAnnotation (SgType *) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaNormalAnnotation * | buildJavaNormalAnnotation (SgType *, std::list< SgJavaMemberValuePair * > &) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgInitializedName * | buildJavaFormalParameter (SgType *, const SgName &, bool is_var_args=false, bool is_final=false) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaPackageStatement * | buildJavaPackageStatement (std::string) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaImportStatement * | buildJavaImportStatement (std::string, bool) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgClassDeclaration * | buildJavaDefiningClassDeclaration (SgScopeStatement *, std::string, SgClassDeclaration::class_types kind=SgClassDeclaration::e_class) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgSourceFile * | buildJavaSourceFile (SgProject *, std::string, SgClassDefinition *, std::string) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgArrayType * | getUniqueJavaArrayType (SgType *, int) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaParameterizedType * | getUniqueJavaParameterizedType (SgNamedType *, SgTemplateParameterPtrList *) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaQualifiedType * | getUniqueJavaQualifiedType (SgClassDeclaration *, SgNamedType *, SgNamedType *) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaWildcardType * | getUniqueJavaWildcardUnbound () |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaWildcardType * | getUniqueJavaWildcardExtends (SgType *) |
Build a SgFile node and attach it to SgProject. | |
ROSE_DLL_API SgJavaWildcardType * | getUniqueJavaWildcardSuper (SgType *) |
Build a SgFile node and attach it to SgProject. | |
Untyped IR Node Build Interfaces | |
Build function for ROSE AST's in terms of Untyped IR nodes. The ROSE Untyped IR nodes can be a starting place for defining the new language frontend, these IR nodes address the interface from an external language parser and the construction of the ROSE Untyped AST. Later iterations on the ROSE Untyped AST can be used to translate (or construct) a proper ROSE AST in terms of non-untyped IR nodes. All untyped IR nodes have been removed and this interface removed. Ultimately it proved easier to construct regular IR nodes from the Jovial parser. Using the untyped system just led to an unnecessary step and wasted effort. | |
template<class T > | |
T * | buildUnaryExpression (SgExpression *operand) |
Template function to build a unary expression of type T. Instantiated functions include:buildAddressOfOp(),buildBitComplementOp(),buildBitComplementOp(),buildMinusOp(),buildNotOp(),buildPointerDerefExp(),buildUnaryAddOp(),buildMinusMinusOp(),buildPlusPlusOp(). They are also used for the unary vararg operators (which are not technically unary operators). | |
template<class T > | |
T * | buildUnaryExpression_nfi (SgExpression *operand) |
Template function to build a unary expression of type T with no file info. Instantiated functions include:buildAddressOfOp(),buildBitComplementOp(),buildBitComplementOp(),buildMinusOp(),buildNotOp(),buildPointerDerefExp(),buildUnaryAddOp(),buildMinusMinusOp(),buildPlusPlusOp(). They are also used for the unary vararg operators (which are not technically unary operators). | |
template<class T > | |
T * | buildBinaryExpression (SgExpression *lhs, SgExpression *rhs) |
Template function to build a binary expression of type T, taking care of parent pointers, file info, lvalue, etc. Available instances include: buildAddOp(), buildAndAssignOp(), buildAndOp(), buildArrowExp(),buildArrowStarOp(),buildAtOp, buildAssignOp(),buildBitAndOp(),buildBitOrOp(),buildBitXorOp(),buildCommaOpExp(), buildConcatenationOp(),buildDivAssignOp(),buildDivideOp(),buildDotExp(),buildEqualityOp(),buildExponentiationOp(),buildGreaterOrEqualOp(),buildGreaterThanOp(),buildIntegerDivideOp(),buildIorAssignOp(),buildLessOrEqualOp(),buildLessThanOp(),buildLshiftAssignOp(),buildLshiftOp(),buildMinusAssignOp(),buildModAssignOp(),buildModOp(),buildMultAssignOp(),buildMultiplyOp(),buildNotEqualOp(),buildOrOp(),buildPlusAssignOp(),buildPntrArrRefExp(),buildRshiftAssignOp(),buildRshiftOp(),buildReplicationOp,buildScopeOp(),buildSubtractOp()buildXorAssignOp() | |
template<class T > | |
T * | buildBinaryExpression_nfi (SgExpression *lhs, SgExpression *rhs) |
Template function to build a binary expression of type T, taking care of parent pointers, but without file-info. Available instances include: buildAddOp(), buildAndAssignOp(), buildAndOp(), buildArrowExp(),buildArrowStarOp(),buildAtOp, buildAssignOp(),buildBitAndOp(),buildBitOrOp(),buildBitXorOp(),buildCommaOpExp(), buildConcatenationOp(),buildDivAssignOp(),buildDivideOp(),buildDotExp(),buildEqualityOp(),buildExponentiationOp(),buildGreaterOrEqualOp(),buildGreaterThanOp(),buildIntegerDivideOp(),buildIorAssignOp(),buildLessOrEqualOp(),buildLessThanOp(),buildLshiftAssignOp(),buildLshiftOp(),buildMinusAssignOp(),buildModAssignOp(),buildModOp(),buildMultAssignOp(),buildMultiplyOp(),buildNotEqualOp(),buildOrOp(),buildPlusAssignOp(),buildPntrArrRefExp(),buildRshiftAssignOp(),buildRshiftOp(),buildReplicationOp(),buildScopeOp(),buildSubtractOp()buildXorAssignOp() | |
Variables | |
Sawyer::Message::Facility | mlog |
Scope stack interfaces | |
a global data structure to store current scope and parent scopes. Scope stack is provided as an alternative to manually passing scope parameters to builder functions. It is not required to be used. Please use the recommendeded operation functions for maintaining the scope stack. Don't use raw container access functions to ScopeStack. e.g. avoid ScopeStack.push_back(), using pushScopeStack() instead. | |
enum | SourcePositionClassification { e_sourcePositionError , e_sourcePositionDefault , e_sourcePositionTransformation , e_sourcePositionCompilerGenerated , e_sourcePositionNullPointers , e_sourcePositionFrontendConstruction , e_sourcePosition_last } |
intended to be a private member, don't access it directly. could be changed any time More... | |
std::list< SgScopeStatement * > | ScopeStack |
intended to be a private member, don't access it directly. could be changed any time | |
bool | symbol_table_case_insensitive_semantics = false |
Support for construction of case sensitive/insensitive symbol table handling in scopes. | |
SourcePositionClassification | SourcePositionClassificationMode = SageBuilder::e_sourcePositionTransformation |
C++ SageBuilder namespace specific state for storage of the source code position state (used to control how the source code positon is defined for IR nodes built within the SageBuilder interface). | |
ROSE_DLL_API void | pushScopeStack (SgScopeStatement *stmt) |
Public interfaces of the scope stack, should be stable. | |
ROSE_DLL_API void | popScopeStack () |
intended to be a private member, don't access it directly. could be changed any time | |
ROSE_DLL_API SgScopeStatement * | topScopeStack () |
intended to be a private member, don't access it directly. could be changed any time | |
ROSE_DLL_API bool | emptyScopeStack () |
intended to be a private member, don't access it directly. could be changed any time | |
ROSE_DLL_API void | clearScopeStack () |
intended to be a private member, don't access it directly. could be changed any time | |
SgScopeStatement * | getGlobalScopeFromScopeStack () |
Support to retrive the SgGlobal from the internal scope stack (error if not present in a non-empty list, return null for empty list). | |
bool | inSwitchScope () |
intended to be a private member, don't access it directly. could be changed any time | |
ROSE_DLL_API SourcePositionClassification | getSourcePositionClassificationMode () |
Get the current source position classification (defines how IR nodes built by the SageBuilder interface will be classified). | |
ROSE_DLL_API std::string | display (SourcePositionClassification &scp) |
display function for debugging | |
ROSE_DLL_API void | setSourcePositionClassificationMode (SourcePositionClassification X) |
Set the current source position classification (defines how IR nodes built by the SageBuilder interface will be classified). | |
ROSE_DLL_API SgName | appendTemplateArgumentsToName (const SgName &name, const SgTemplateArgumentPtrList &templateArgumentsList) |
DQ (7/27/2012): changed semantics from removing the template arguments in names to adding the template arguments to names. | |
SgName | unparseTemplateArgumentToString (SgTemplateArgument *templateArgument) |
DQ (3/9/2018): Added to support debugging. | |
intended to be a private member, don't access it directly. could be changed any time
Enumerator | |
---|---|
e_sourcePositionDefault | Error value for enum. |
e_sourcePositionTransformation | Default source position. |
e_sourcePositionCompilerGenerated | Classify as a transformation. |
e_sourcePositionNullPointers | Classify as compiler generated code (e.g. template instantiation). |
e_sourcePositionFrontendConstruction | Set pointers to Sg_File_Info objects to NULL. |
e_sourcePosition_last | Specify as source position to be filled in as part of AST construction in the front-end. Last entry in enum. |
Definition at line 138 of file sageBuilder.h.
void SageBuilder::initDiagnostics | ( | ) |
Definition at line 60 of file sageBuilder.C.
void SageBuilder::pushScopeStack | ( | SgScopeStatement * | stmt | ) |
Public interfaces of the scope stack, should be stable.
Definition at line 359 of file sageBuilder.C.
References ScopeStack.
void SageBuilder::popScopeStack | ( | ) |
intended to be a private member, don't access it directly. could be changed any time
Definition at line 365 of file sageBuilder.C.
References ScopeStack.
SgScopeStatement * SageBuilder::topScopeStack | ( | ) |
intended to be a private member, don't access it directly. could be changed any time
Definition at line 371 of file sageBuilder.C.
References SgScopeStatement::class_name(), and ScopeStack.
Referenced by SageInterface::appendStatement(), buildClassDeclaration_nfi(), buildDefiningFunctionDeclaration(), buildDefiningFunctionDeclaration_T(), buildDefiningMemberFunctionDeclaration(), buildEmptyDeclaration(), buildEnumDeclaration(), buildFunctionCallExp(), buildFunctionCallStmt(), buildFunctionRefExp(), buildFunctionRefExp(), buildJovialDefineDeclaration_nfi(), buildLabelStatement(), buildNamespaceAliasDeclarationStatement(), buildNamespaceDeclaration_nfi(), buildNondefiningClassDeclaration_nfi(), buildNondefiningProcedureHeaderStatement(), buildNondefiningTemplateClassDeclaration_nfi(), buildOpaqueVarRefExp(), buildPragmaDeclaration(), buildProcedureHeaderStatement(), buildStructDeclaration(), buildTemplateClassDeclaration_nfi(), buildTemplateTypedefDeclaration_nfi(), buildTypedefDeclaration_nfi(), buildVariableDeclaration(), buildVariableDeclaration_nfi(), buildVarRefExp(), buildVarRefExp(), SageInterface::fixVariableDeclaration(), SageInterface::insertHeader(), SageInterface::lookupClassSymbolInParentScopes(), SageInterface::lookupEnumSymbolInParentScopes(), SageInterface::lookupFunctionSymbolInParentScopes(), SageInterface::lookupFunctionSymbolInParentScopes(), SageInterface::lookupNamedTypeInParentScopes(), SageInterface::lookupNamespaceSymbolInParentScopes(), SageInterface::lookupNonrealSymbolInParentScopes(), SageInterface::lookupSymbolInParentScopes(), SageInterface::lookupSymbolInParentScopesIgnoringAliasSymbols(), SageInterface::lookupTemplateClassSymbolInParentScopes(), SageInterface::lookupTemplateFunctionSymbolInParentScopes(), SageInterface::lookupTemplateMemberFunctionSymbolInParentScopes(), SageInterface::lookupTemplateVariableSymbolInParentScopes(), SageInterface::lookupTypedefSymbolInParentScopes(), SageInterface::lookupVariableSymbolInParentScopes(), and SageInterface::prependStatement().
bool SageBuilder::emptyScopeStack | ( | ) |
intended to be a private member, don't access it directly. could be changed any time
Definition at line 404 of file sageBuilder.C.
References ScopeStack.
void SageBuilder::clearScopeStack | ( | ) |
intended to be a private member, don't access it directly. could be changed any time
Definition at line 409 of file sageBuilder.C.
References ScopeStack.
SgScopeStatement * SageBuilder::getGlobalScopeFromScopeStack | ( | ) |
Support to retrive the SgGlobal from the internal scope stack (error if not present in a non-empty list, return null for empty list).
Definition at line 389 of file sageBuilder.C.
References ScopeStack.
bool SageBuilder::inSwitchScope | ( | ) |
intended to be a private member, don't access it directly. could be changed any time
Definition at line 414 of file sageBuilder.C.
References ScopeStack.
SageBuilder::SourcePositionClassification SageBuilder::getSourcePositionClassificationMode | ( | ) |
Get the current source position classification (defines how IR nodes built by the SageBuilder interface will be classified).
Definition at line 190 of file sageBuilder.C.
References SourcePositionClassificationMode.
Referenced by SageInterface::appendStatement(), SageInterface::insertStatement(), SageInterface::prependStatement(), and SageInterface::setSourcePosition().
string SageBuilder::display | ( | SourcePositionClassification & | scp | ) |
display function for debugging
Definition at line 203 of file sageBuilder.C.
References e_sourcePosition_last, e_sourcePositionCompilerGenerated, e_sourcePositionDefault, e_sourcePositionFrontendConstruction, e_sourcePositionNullPointers, and e_sourcePositionTransformation.
Referenced by buildClassDeclaration_nfi(), buildNondefiningClassDeclaration_nfi(), and SageInterface::setSourcePosition().
void SageBuilder::setSourcePositionClassificationMode | ( | SageBuilder::SourcePositionClassification | X | ) |
Set the current source position classification (defines how IR nodes built by the SageBuilder interface will be classified).
Definition at line 197 of file sageBuilder.C.
References SourcePositionClassificationMode.
SgName SageBuilder::appendTemplateArgumentsToName | ( | const SgName & | name, |
const SgTemplateArgumentPtrList & | templateArgumentsList | ||
) |
DQ (7/27/2012): changed semantics from removing the template arguments in names to adding the template arguments to names.
Definition at line 432 of file sageBuilder.C.
References SgTemplateArgument::argument_undefined, SgType::class_name(), SgDeclarationStatement::class_name(), SgExpression::class_name(), SgFile::e_Cxx_language, SgTemplateArgument::get_argumentType(), SgTemplateArgument::get_expression(), SgInitializedName::get_qualified_name(), SgTemplateArgument::get_type(), SgTemplateArgument::nontype_argument, SgTemplateArgument::start_of_pack_expansion_argument, SgType::stripType(), SgTemplateArgument::template_template_argument, SgTemplateArgument::type_argument, SgNode::unparseToString(), and SgDeclarationStatement::variantT().
Referenced by buildClassDeclaration_nfi(), buildDefiningFunctionDeclaration_T(), buildDefiningMemberFunctionDeclaration(), buildNondefiningClassDeclaration_nfi(), buildNondefiningTemplateClassDeclaration_nfi(), buildTemplateClassDeclaration_nfi(), buildTemplateInstantiationTypedefDeclaration_nfi(), buildTemplateVariableInstantiation_nfi(), and SageInterface::fixVariableDeclaration().
SgName SageBuilder::unparseTemplateArgumentToString | ( | SgTemplateArgument * | templateArgument | ) |
DQ (3/9/2018): Added to support debugging.
Definition at line 760 of file sageBuilder.C.
References SgFile::e_Cxx_language, and SgNode::unparseToString().
Referenced by buildNondefiningClassDeclaration_nfi().
SgTypeBool * SageBuilder::buildBoolType | ( | ) |
Built in simple types.
Definition at line 8655 of file sageBuilder.C.
References buildBoolType().
Referenced by buildBoolType(), and SageInterface::replaceExpressionWithStatement().
SgTypeNullptr * SageBuilder::buildNullptrType | ( | ) |
Built in simple types.
Definition at line 8659 of file sageBuilder.C.
References SgTypeNullptr::createType().
SgTypeChar * SageBuilder::buildCharType | ( | ) |
Built in simple types.
Definition at line 8666 of file sageBuilder.C.
References SgTypeChar::createType().
SgTypeDouble * SageBuilder::buildDoubleType | ( | ) |
Built in simple types.
Definition at line 8936 of file sageBuilder.C.
References SgTypeDouble::createType().
SgTypeFloat * SageBuilder::buildFloatType | ( | ) |
Built in simple types.
Definition at line 8959 of file sageBuilder.C.
References SgTypeFloat::createType().
SgTypeInt * SageBuilder::buildIntType | ( | ) |
Built in simple types.
Definition at line 8931 of file sageBuilder.C.
References buildIntType().
Referenced by buildFunctionRefExp(), buildIntType(), buildOpaqueType(), buildOpaqueVarRefExp(), SageInterface::loopCollapsing(), SageInterface::loopTiling(), and SageInterface::loopUnrolling().
SgTypeLong * SageBuilder::buildLongType | ( | ) |
Built in simple types.
Definition at line 8880 of file sageBuilder.C.
References SgTypeLong::createType().
SgTypeLongDouble * SageBuilder::buildLongDoubleType | ( | ) |
Built in simple types.
Definition at line 8716 of file sageBuilder.C.
References SgTypeLongDouble::createType().
SgTypeLongLong * SageBuilder::buildLongLongType | ( | ) |
Built in simple types.
Definition at line 8709 of file sageBuilder.C.
References SgTypeLongLong::createType().
SgTypeShort * SageBuilder::buildShortType | ( | ) |
Built in simple types.
Definition at line 8866 of file sageBuilder.C.
References SgTypeShort::createType().
SgTypeFloat80 * SageBuilder::buildFloat80Type | ( | ) |
Built in simple types.
Definition at line 8757 of file sageBuilder.C.
References SgTypeFloat80::createType().
SgTypeFloat128 * SageBuilder::buildFloat128Type | ( | ) |
Built in simple types.
Definition at line 8763 of file sageBuilder.C.
References SgTypeFloat128::createType().
SgTypeFixed * SageBuilder::buildFixedType | ( | SgExpression * | fraction, |
SgExpression * | scale | ||
) |
Build a Jovial fixed type with a fraction specifier and a scale specifier.
Definition at line 8967 of file sageBuilder.C.
References SgTypeFixed::createType(), and SgNode::set_parent().
SgJovialBitType * SageBuilder::buildJovialBitType | ( | SgExpression * | size | ) |
Build a Jovial bit type of a given size.
Definition at line 8979 of file sageBuilder.C.
References SgJovialBitType::createType(), and SgNode::set_parent().
SgTypeString * SageBuilder::buildStringType | ( | ) |
DQ (8/21/2010): We want to move to the new buildStringType( SgExpression*,size_t) function over the older buildStringType() function.
Definition at line 8887 of file sageBuilder.C.
SgTypeString * SageBuilder::buildStringType | ( | SgExpression * | stringLengthExpression | ) |
Built in simple types.
Definition at line 8899 of file sageBuilder.C.
SgTypeVoid * SageBuilder::buildVoidType | ( | ) |
Built in simple types.
Definition at line 8845 of file sageBuilder.C.
References SgTypeVoid::createType().
Referenced by buildDefaultConstructor(), and buildProcedureHeaderStatement().
SgTypeWchar * SageBuilder::buildWcharType | ( | ) |
Built in simple types.
Definition at line 8814 of file sageBuilder.C.
References SgTypeWchar::createType().
SgTypeChar16 * SageBuilder::buildChar16Type | ( | ) |
Built in simple types.
Definition at line 8822 of file sageBuilder.C.
References SgTypeChar16::createType().
SgTypeChar32 * SageBuilder::buildChar32Type | ( | ) |
Built in simple types.
Definition at line 8830 of file sageBuilder.C.
References SgTypeChar32::createType().
SgTypeSignedChar * SageBuilder::buildSignedCharType | ( | ) |
Built in simple types.
Definition at line 8838 of file sageBuilder.C.
References SgTypeSignedChar::createType().
SgTypeSignedInt * SageBuilder::buildSignedIntType | ( | ) |
Built in simple types.
Definition at line 8769 of file sageBuilder.C.
References SgTypeSignedInt::createType().
SgTypeSignedLong * SageBuilder::buildSignedLongType | ( | ) |
Built in simple types.
Definition at line 8783 of file sageBuilder.C.
References SgTypeSignedLong::createType().
SgTypeSignedLongLong * SageBuilder::buildSignedLongLongType | ( | ) |
Built in simple types.
Definition at line 8790 of file sageBuilder.C.
References SgTypeSignedLongLong::createType().
SgTypeSignedShort * SageBuilder::buildSignedShortType | ( | ) |
Built in simple types.
Definition at line 8750 of file sageBuilder.C.
References SgTypeSignedShort::createType().
SgTypeSigned128bitInteger * SageBuilder::buildSigned128bitIntegerType | ( | ) |
Built in simple types.
Definition at line 8798 of file sageBuilder.C.
References SgTypeSigned128bitInteger::createType().
SgTypeUnsigned128bitInteger * SageBuilder::buildUnsigned128bitIntegerType | ( | ) |
Built in simple types.
Definition at line 8805 of file sageBuilder.C.
References SgTypeUnsigned128bitInteger::createType().
SgTypeUnsignedChar * SageBuilder::buildUnsignedCharType | ( | ) |
Built in simple types.
Definition at line 8776 of file sageBuilder.C.
References SgTypeUnsignedChar::createType().
SgTypeUnsignedInt * SageBuilder::buildUnsignedIntType | ( | ) |
Built in simple types.
Definition at line 8745 of file sageBuilder.C.
References buildUnsignedIntType().
Referenced by buildUnsignedIntType().
SgTypeUnsignedLong * SageBuilder::buildUnsignedLongType | ( | ) |
Built in simple types.
Definition at line 8730 of file sageBuilder.C.
References SgTypeUnsignedLong::createType().
SgTypeUnsignedLongLong * SageBuilder::buildUnsignedLongLongType | ( | ) |
Built in simple types.
Definition at line 8723 of file sageBuilder.C.
References SgTypeUnsignedLongLong::createType().
SgTypeUnsignedShort * SageBuilder::buildUnsignedShortType | ( | ) |
Built in simple types.
Definition at line 8873 of file sageBuilder.C.
References SgTypeUnsignedShort::createType().
SgTypeUnknown * SageBuilder::buildUnknownType | ( | ) |
Built in simple types.
Definition at line 8852 of file sageBuilder.C.
References SgTypeUnknown::createType().
SgAutoType * SageBuilder::buildAutoType | ( | ) |
Built in simple types.
Definition at line 8859 of file sageBuilder.C.
SgTypeBool * SageBuilder::buildBoolType | ( | SgExpression * | kind_expr | ) |
Builder functions for primitive types with type size (kind) expressions.
Definition at line 8649 of file sageBuilder.C.
References SgTypeBool::createType(), and SgNode::set_parent().
SgTypeInt * SageBuilder::buildIntType | ( | SgExpression * | kind_expr | ) |
Built in simple types.
Definition at line 8916 of file sageBuilder.C.
References SgTypeInt::createType(), and SgNode::set_parent().
SgTypeFloat * SageBuilder::buildFloatType | ( | SgExpression * | kind_expr | ) |
Built in simple types.
Definition at line 8944 of file sageBuilder.C.
References SgTypeFloat::createType(), and SgNode::set_parent().
SgTypeUnsignedInt * SageBuilder::buildUnsignedIntType | ( | SgExpression * | kind_expr | ) |
Built in simple types.
Definition at line 8738 of file sageBuilder.C.
References SgTypeUnsignedInt::createType(), and SgNode::set_parent().
Build a type based on Fortran's implicit typing rules.
Currently this interface does not take into account possible implicit statements that change the rules.
SgPointerType * SageBuilder::buildPointerType | ( | SgType * | base_type = nullptr | ) |
Build a pointer type.
Build a statement from an arbitrary string, used for irregular statements with macros, platform-specified attributes etc.
Definition at line 8466 of file sageBuilder.C.
References SgPointerType::createType().
Referenced by SageInterface::createTempVariableAndReferenceForExpression(), SageInterface::createTempVariableForExpression(), fixupCopyOfNodeFromSeparateFileInNewTargetAst(), and getTargetFileType().
SgReferenceType * SageBuilder::buildReferenceType | ( | SgType * | base_type = nullptr | ) |
Build a reference type.
Definition at line 8486 of file sageBuilder.C.
References SgReferenceType::createType().
Referenced by SageInterface::createTempVariableForExpression().
SgRvalueReferenceType * SageBuilder::buildRvalueReferenceType | ( | SgType * | base_type | ) |
Build a rvalue reference type.
Definition at line 8500 of file sageBuilder.C.
References SgRvalueReferenceType::createType().
SgDeclType * SageBuilder::buildDeclType | ( | SgExpression * | base_expression, |
SgType * | base_type | ||
) |
Build a decltype reference type.
Definition at line 8509 of file sageBuilder.C.
References SgDeclType::createType(), and SgNode::set_parent().
SgTypeOfType * SageBuilder::buildTypeOfType | ( | SgExpression * | base_expression, |
SgType * | base_type | ||
) |
Build a GNU typeof operator.
Definition at line 8534 of file sageBuilder.C.
References SgType::class_name(), SgExpression::class_name(), SgTypeOfType::createType(), and SgNode::set_parent().
SgModifierType * SageBuilder::buildModifierType | ( | SgType * | base_type = nullptr | ) |
Build a modifier type.
Definition at line 8990 of file sageBuilder.C.
References SgModifierType::class_name().
SgModifierType * SageBuilder::buildConstType | ( | SgType * | base_type = nullptr | ) |
Build a const type.
Build a constant type.
Definition at line 9021 of file sageBuilder.C.
References SgModifierType::get_typeModifier().
Referenced by fixupCopyOfNodeFromSeparateFileInNewTargetAst(), and getTargetFileType().
SgModifierType * SageBuilder::buildAliasedType | ( | SgType * | base_type | ) |
Build an aliased type for Ada.
Definition at line 9269 of file sageBuilder.C.
References SgModifierType::get_typeModifier().
SgModifierType * SageBuilder::buildNotNullType | ( | SgType * | base_type | ) |
Build a not null type for Ada.
Definition at line 9276 of file sageBuilder.C.
References SgModifierType::get_typeModifier().
SgModifierType * SageBuilder::buildVolatileType | ( | SgType * | base_type = nullptr | ) |
Build a volatile type.
Definition at line 9080 of file sageBuilder.C.
References SgType::class_name(), SgModifierType::class_name(), and SgModifierType::get_typeModifier().
SgModifierType * SageBuilder::buildConstVolatileType | ( | SgType * | base_type = nullptr | ) |
Build a const volatile type.
Definition at line 9113 of file sageBuilder.C.
References SgType::class_name(), SgModifierType::class_name(), and SgModifierType::get_typeModifier().
SgModifierType * SageBuilder::buildRestrictType | ( | SgType * | base_type | ) |
Build a restrict type.
Definition at line 9206 of file sageBuilder.C.
References SgType::class_name(), SgModifierType::class_name(), and SgModifierType::get_typeModifier().
SgArrayType * SageBuilder::buildArrayType | ( | SgType * | base_type = nullptr , |
SgExpression * | index = nullptr |
||
) |
Build ArrayType.
Definition at line 5425 of file sageBuilder.C.
References SgNode::set_parent().
Referenced by buildArrayType().
SgArrayType * SageBuilder::buildArrayType | ( | SgType * | base_type, |
SgExprListExp * | dim_info | ||
) |
Build an ArrayType based on dimension information.
Note, the index member variable will be set to a NullExpression.
base_type | The base type of the array. Note that if the base type is itself an array type, the shape of the array may be changed. |
dim_info | A list of expressions describing the shape of the array. The rank of the array is set from the length of this list. |
Definition at line 5396 of file sageBuilder.C.
References buildArrayType(), SgNode::set_parent(), and SageInterface::setSourcePosition().
SgModifierType * SageBuilder::buildFortranKindType | ( | SgType * | base_type, |
SgExpression * | kindExpression | ||
) |
Build a type based on the Fortran kind mechanism.
Definition at line 9049 of file sageBuilder.C.
References SgType::class_name(), and SgModifierType::class_name().
SgFunctionType * SageBuilder::buildFunctionType | ( | SgType * | return_type, |
SgFunctionParameterTypeList * | typeList = nullptr |
||
) |
Build function type from return type and parameter type list.
Definition at line 2403 of file sageBuilder.C.
References SgNode::get_globalFunctionTypeTable(), SgFunctionType::get_mangled(), and SgNode::set_parent().
Referenced by buildDefiningFunctionDeclaration(), buildFunctionCallExp(), buildFunctionType(), and buildProcedureHeaderStatement().
SgFunctionType * SageBuilder::buildFunctionType | ( | SgType * | return_type, |
SgFunctionParameterList * | argList = nullptr |
||
) |
Build function type from return type and parameter list.
Definition at line 2743 of file sageBuilder.C.
References buildFunctionParameterTypeList(), and buildFunctionType().
SgMemberFunctionType * SageBuilder::buildMemberFunctionType | ( | SgType * | return_type, |
SgFunctionParameterTypeList * | typeList, | ||
SgScopeStatement * | struct_name, | ||
unsigned int | mfunc_specifier | ||
) |
Built in simple types.
Definition at line 2561 of file sageBuilder.C.
References buildMemberFunctionType(), SgScopeStatement::class_name(), SgFunctionParameterTypeList::get_arguments(), SgClassDefinition::get_declaration(), SageInterface::get_name(), and SgNode::get_parent().
Referenced by buildDefiningMemberFunctionDeclaration(), buildMemberFunctionType(), and SageInterface::findJavaMain().
SgMemberFunctionType * SageBuilder::buildMemberFunctionType | ( | SgType * | return_type, |
SgFunctionParameterTypeList * | typeList, | ||
SgType * | classType, | ||
unsigned int | mfunc_specifier | ||
) |
DQ (8/19/2012): Refactored some of the code supporting construction of the SgMemberFunctionType.
Definition at line 2452 of file sageBuilder.C.
References SgMemberFunctionType::createType(), SgNode::get_globalFunctionTypeTable(), SgMemberFunctionType::get_mangled(), SgMemberFunctionType::isLvalueReferenceFunc(), SgMemberFunctionType::isRvalueReferenceFunc(), and SgNode::set_parent().
SgPointerMemberType * SageBuilder::buildPointerMemberType | ( | SgType * | base_type, |
SgType * | classType | ||
) |
Pei-Hung (06/30/2023): support for SgPointerMemberType.
Definition at line 2683 of file sageBuilder.C.
ROSE_DLL_API SgClassType * SageBuilder::buildClassTemplateType | ( | SgTemplateClassDeclaration * | template_decl, |
std::vector< SgNode * > & | template_args | ||
) |
Some support for building class template instantiation declarations.
Note, the template is not actually instantiated, but a ‘forward declaration’ node is created.
template_decl | the template class declaration (e.g., template <class T> struct matrix {};) |
template_args | the arguments of the template instantiation. (e.g., [SgTypeFloat]). WARNING: the objects in this list will be linked into the template declaration and their parent pointer may change. Thus it is the caller's responsibility to clone nodes if used elsewhere. e.g., SomeClass<0> <- the expression representing 0 may be modified. |
SgType * SageBuilder::buildOpaqueType | ( | std::string const | type_name, |
SgScopeStatement * | scope | ||
) |
Build an opaque type with a name, useful when a type's details are unknown during transformation, especially for a runtime library's internal type. Must provide scope here.
Build an opaque type with a name, useful when a type's details are unknown during transformation, especially for a runtime library's internal type.
Some types are not known during translation but nevertheless are needed. For example, some internal types from a runtime library. To work around this problem: this function prepends a hidden typedef declaration into scope 'typedef int OpaqueTypeName;' The translation-generated code is expected to include the runtime library's headers to have the real type declarations.
Definition at line 2695 of file sageBuilder.C.
References buildIntType(), SgTypedefType::createType(), SgLocatedNode::get_file_info(), SgScopeStatement::insert_symbol(), SageInterface::prependStatement(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SageInterface::setOneSourcePositionForTransformation(), and Sg_File_Info::unsetOutputInCodeGeneration().
SgModifierType * SageBuilder::buildUpcStrictType | ( | SgType * | base_type = nullptr | ) |
Build a UPC strict type.
Definition at line 9286 of file sageBuilder.C.
References SgType::class_name(), SgModifierType::class_name(), SgUPC_AccessModifier::e_upc_strict, and SgModifierType::get_typeModifier().
SgModifierType * SageBuilder::buildUpcRelaxedType | ( | SgType * | base_type = nullptr | ) |
Build a UPC relaxed type.
Definition at line 9319 of file sageBuilder.C.
References SgType::class_name(), SgModifierType::class_name(), SgUPC_AccessModifier::e_upc_relaxed, and SgModifierType::get_typeModifier().
SgModifierType * SageBuilder::buildUpcSharedType | ( | SgType * | base_type = nullptr , |
long | layout = -1 |
||
) |
Build a UPC shared type.
Definition at line 9352 of file sageBuilder.C.
References SgType::class_name(), SgModifierType::class_name(), and SgModifierType::get_typeModifier().
Referenced by buildUpcBlockIndefiniteType(), buildUpcBlockNumberType(), and buildUpcBlockStarType().
SgModifierType * SageBuilder::buildUpcBlockIndefiniteType | ( | SgType * | base_type = nullptr | ) |
Build a UPC shared[] type.
Definition at line 9389 of file sageBuilder.C.
References buildUpcSharedType(), SgType::class_name(), and SgModifierType::get_typeModifier().
SgModifierType * SageBuilder::buildUpcBlockStarType | ( | SgType * | base_type = nullptr | ) |
Build a UPC shared[*] type.
Definition at line 9413 of file sageBuilder.C.
References buildUpcSharedType(), SgType::class_name(), and SgModifierType::get_typeModifier().
SgModifierType * SageBuilder::buildUpcBlockNumberType | ( | SgType * | base_type, |
long | block_factor | ||
) |
Build a UPC shared[n] type.
Definition at line 9437 of file sageBuilder.C.
References buildUpcSharedType(), SgType::class_name(), and SgModifierType::get_typeModifier().
SgTypeComplex * SageBuilder::buildComplexType | ( | SgType * | base_type = nullptr | ) |
Build a complex type.
Definition at line 9462 of file sageBuilder.C.
SgTypeImaginary * SageBuilder::buildImaginaryType | ( | SgType * | base_type = nullptr | ) |
Build an imaginary type.
Definition at line 9473 of file sageBuilder.C.
SgConstVolatileModifier * SageBuilder::buildConstVolatileModifier | ( | SgConstVolatileModifier::cv_modifier_enum | mtype = SgConstVolatileModifier::e_unknown | ) |
Build a const/volatile type qualifier.
Definition at line 9571 of file sageBuilder.C.
SgTypeMatrix * SageBuilder::buildMatrixType | ( | ) |
Build a Matlab Matrix Type.
Build a Matrix Type for Matlab.
Definition at line 9484 of file sageBuilder.C.
SgTypeTuple * SageBuilder::buildTupleType | ( | SgType * | t1 = NULL , |
SgType * | t2 = NULL , |
||
SgType * | t3 = NULL , |
||
SgType * | t4 = NULL , |
||
SgType * | t5 = NULL , |
||
SgType * | t6 = NULL , |
||
SgType * | t7 = NULL , |
||
SgType * | t8 = NULL , |
||
SgType * | t9 = NULL , |
||
SgType * | t10 = NULL |
||
) |
Build a tuple of types. Useful for a function returning multiple variables of different types.
Build a type that holds multiple types. Used to represent the return type of a matlab function when it returns multiple variables of different types.
Definition at line 9492 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgNonrealType * SageBuilder::buildNonrealType | ( | const SgName & | name, |
SgDeclarationScope * | scope | ||
) |
Build a non real type used for template parameter. Internally a SgNorealDecl is also built.
Definition at line 9514 of file sageBuilder.C.
References buildNonrealDecl(), and SgNode::set_parent().
SgVariantExpression * SageBuilder::buildVariantExpression | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5457 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgNullExpression * SageBuilder::buildNullExpression | ( | ) |
Build a null expression, set file info as the default one.
Definition at line 5472 of file sageBuilder.C.
References buildNullExpression_nfi(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildFortranDo(), buildReturnStmt(), SageInterface::moveForStatementIncrementIntoBody(), and SageInterface::replaceExpressionWithStatement().
SgNullExpression * SageBuilder::buildNullExpression_nfi | ( | ) |
No file info version of buildNullExpression(). File info is to be set later on.
Definition at line 5465 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
Referenced by buildFortranDo_nfi(), buildNullExpression(), and buildSubscriptExpression_nfi().
SgColonShapeExp * SageBuilder::buildColonShapeExp | ( | ) |
Build a Fortran colon-shape expression, set file info as the default one.
Definition at line 5485 of file sageBuilder.C.
References buildColonShapeExp_nfi(), and SageInterface::setOneSourcePositionForTransformation().
SgColonShapeExp * SageBuilder::buildColonShapeExp_nfi | ( | ) |
No file info version of buildColonShapeExp(). File info is to be set later on.
Definition at line 5478 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
Referenced by buildColonShapeExp().
SgBoolValExp * SageBuilder::buildBoolValExp | ( | int | value = 0 | ) |
Build a bool value expression, the name convention of SgBoolValExp is little different from others for some unknown reason.
Definition at line 4301 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
Referenced by buildBoolValExp(), SageInterface::convertForToWhile(), and SageInterface::replaceExpressionWithStatement().
SgBoolValExp * SageBuilder::buildBoolValExp | ( | bool | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4309 of file sageBuilder.C.
References buildBoolValExp().
SgBoolValExp * SageBuilder::buildBoolValExp_nfi | ( | int | value | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4313 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgCharVal * SageBuilder::buildCharVal | ( | char | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4353 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgCharVal * SageBuilder::buildCharVal_nfi | ( | char | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4361 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgNullptrValExp * SageBuilder::buildNullptrValExp | ( | ) |
DQ (7/31/2014): Adding support for C++11 nullptr const value expressions.
Definition at line 4321 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgNullptrValExp * SageBuilder::buildNullptrValExp_nfi | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4329 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgVoidVal * SageBuilder::buildVoidVal | ( | ) |
DQ (2/14/2019): Adding support for C++14 void value expressions.
Definition at line 4337 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgVoidVal * SageBuilder::buildVoidVal_nfi | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4345 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgWcharVal * SageBuilder::buildWcharVal | ( | wchar_t | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4369 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgWcharVal * SageBuilder::buildWcharVal_nfi | ( | wchar_t | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4377 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgChar16Val * SageBuilder::buildChar16Val | ( | unsigned short | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4386 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgChar16Val * SageBuilder::buildChar16Val_nfi | ( | unsigned short | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4394 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgChar32Val * SageBuilder::buildChar32Val | ( | unsigned int | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4403 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgChar32Val * SageBuilder::buildChar32Val_nfi | ( | unsigned int | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4411 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgComplexVal * SageBuilder::buildComplexVal | ( | SgValueExp * | real_value, |
SgValueExp * | imaginary_value | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4420 of file sageBuilder.C.
References SgNode::get_parent(), SgExpression::get_type(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgComplexVal * SageBuilder::buildComplexVal_nfi | ( | SgValueExp * | real_value, |
SgValueExp * | imaginary_value, | ||
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4439 of file sageBuilder.C.
References SgNode::get_parent(), SgExpression::get_type(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgComplexVal * SageBuilder::buildImaginaryVal | ( | long double | imaginary_value | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4459 of file sageBuilder.C.
References buildLongDoubleVal(), SgTypeLongDouble::createType(), SgNode::get_parent(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgComplexVal * SageBuilder::buildImaginaryVal | ( | SgValueExp * | imaginary_value | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4472 of file sageBuilder.C.
References SgNode::get_parent(), SgExpression::get_type(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgComplexVal * SageBuilder::buildImaginaryVal_nfi | ( | SgValueExp * | imaginary_value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4487 of file sageBuilder.C.
References SgNode::get_parent(), SgExpression::get_type(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgDoubleVal * SageBuilder::buildDoubleVal | ( | double | value = 0.0 | ) |
Build a double value expression.
Definition at line 4502 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgDoubleVal * SageBuilder::buildDoubleVal_nfi | ( | double | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4510 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgFloatVal * SageBuilder::buildFloatVal | ( | float | value = 0.0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4518 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgFloatVal * SageBuilder::buildFloatVal_nfi | ( | float | value = 0.0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4526 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
Referenced by buildFloatVal_nfi().
SgFloatVal * SageBuilder::buildFloatVal_nfi | ( | float | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4534 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgFloatVal * SageBuilder::buildFloatVal_nfi | ( | const std::string & | str | ) |
Build a float value expression by converting the string.
Definition at line 4542 of file sageBuilder.C.
References buildFloatVal_nfi().
SgIntVal * SageBuilder::buildIntVal | ( | int | value = 0 | ) |
Build an integer value expression.
Definition at line 4549 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
Referenced by SageInterface::doLoopNormalization(), SageInterface::getForLoopInformations(), SageInterface::isCanonicalDoLoop(), SageInterface::isCanonicalForLoop(), SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::loopUnrolling(), SageInterface::normalizeForLoopIncrement(), and SageInterface::normalizeForLoopTest().
SgIntVal * SageBuilder::buildIntValHex | ( | int | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4557 of file sageBuilder.C.
References Rose::StringUtility::intToHex(), and SageInterface::setOneSourcePositionForTransformation().
SgIntVal * SageBuilder::buildIntVal_nfi | ( | int | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4565 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
Referenced by buildIntVal_nfi().
SgIntVal * SageBuilder::buildIntVal_nfi | ( | int | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4573 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgIntVal * SageBuilder::buildIntVal_nfi | ( | const std::string & | str | ) |
Build an integer value expression by converting the string.
Definition at line 4581 of file sageBuilder.C.
References buildIntVal_nfi().
SgLongIntVal * SageBuilder::buildLongIntVal | ( | long | value = 0 | ) |
Build a long integer value expression.
Definition at line 4586 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
ROSE_DLL_API SgLongIntVal * SageBuilder::buildLongIntValHex | ( | long | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
SgLongIntVal * SageBuilder::buildLongIntVal_nfi | ( | long | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4594 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgLongLongIntVal * SageBuilder::buildLongLongIntVal | ( | long long | value = 0 | ) |
Build a long long integer value expression.
Definition at line 4602 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
ROSE_DLL_API SgLongLongIntVal * SageBuilder::buildLongLongIntValHex | ( | long long | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
SgLongLongIntVal * SageBuilder::buildLongLongIntVal_nfi | ( | long long | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4610 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgEnumVal * SageBuilder::buildEnumVal_nfi | ( | long long int | value, |
SgEnumDeclaration * | decl, | ||
SgName | name | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4627 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgEnumVal * SageBuilder::buildEnumVal | ( | long long int | value, |
SgEnumDeclaration * | decl, | ||
SgName | name | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4618 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgEnumVal * SageBuilder::buildEnumVal | ( | SgEnumFieldSymbol * | sym | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4635 of file sageBuilder.C.
References SageInterface::copyExpression().
SgLongDoubleVal * SageBuilder::buildLongDoubleVal | ( | long double | value = 0.0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4646 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
Referenced by buildImaginaryVal().
SgLongDoubleVal * SageBuilder::buildLongDoubleVal_nfi | ( | long double | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4654 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgFloat80Val * SageBuilder::buildFloat80Val | ( | long double | value = 0.0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4662 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgFloat80Val * SageBuilder::buildFloat80Val_nfi | ( | long double | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4670 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgFloat128Val * SageBuilder::buildFloat128Val | ( | long double | value = 0.0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4678 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgFloat128Val * SageBuilder::buildFloat128Val_nfi | ( | long double | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4686 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgShortVal * SageBuilder::buildShortVal | ( | short | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4734 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgShortVal * SageBuilder::buildShortValHex | ( | short | value = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4742 of file sageBuilder.C.
References Rose::StringUtility::intToHex(), and SageInterface::setOneSourcePositionForTransformation().
SgShortVal * SageBuilder::buildShortVal_nfi | ( | short | value, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4750 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgStringVal * SageBuilder::buildStringVal | ( | std::string | value = "" | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4694 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgStringVal * SageBuilder::buildStringVal_nfi | ( | std::string | value | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4702 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgUnsignedCharVal * SageBuilder::buildUnsignedCharVal | ( | unsigned char | v = 0 | ) |
Build an unsigned char.
Definition at line 4710 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgUnsignedCharVal * SageBuilder::buildUnsignedCharValHex | ( | unsigned char | v = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4718 of file sageBuilder.C.
References Rose::StringUtility::intToHex(), and SageInterface::setOneSourcePositionForTransformation().
SgUnsignedCharVal * SageBuilder::buildUnsignedCharVal_nfi | ( | unsigned char | v, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4726 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgUnsignedShortVal * SageBuilder::buildUnsignedShortVal | ( | unsigned short | v = 0 | ) |
Build an unsigned short integer.
Definition at line 4758 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgUnsignedShortVal * SageBuilder::buildUnsignedShortValHex | ( | unsigned short | v = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4766 of file sageBuilder.C.
References Rose::StringUtility::intToHex(), and SageInterface::setOneSourcePositionForTransformation().
SgUnsignedShortVal * SageBuilder::buildUnsignedShortVal_nfi | ( | unsigned short | v, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4774 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgUnsignedIntVal * SageBuilder::buildUnsignedIntVal | ( | unsigned int | v = 0 | ) |
Build an unsigned integer.
Definition at line 4782 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgUnsignedIntVal * SageBuilder::buildUnsignedIntValHex | ( | unsigned int | v = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4790 of file sageBuilder.C.
References Rose::StringUtility::intToHex(), and SageInterface::setOneSourcePositionForTransformation().
SgUnsignedIntVal * SageBuilder::buildUnsignedIntVal_nfi | ( | unsigned int | v, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4798 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgUnsignedLongVal * SageBuilder::buildUnsignedLongVal | ( | unsigned long | v = 0 | ) |
Build a unsigned long integer.
Definition at line 4806 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgUnsignedLongVal * SageBuilder::buildUnsignedLongValHex | ( | unsigned long | v = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4814 of file sageBuilder.C.
References Rose::StringUtility::intToHex(), and SageInterface::setOneSourcePositionForTransformation().
SgUnsignedLongVal * SageBuilder::buildUnsignedLongVal_nfi | ( | unsigned long | v, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4822 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgUnsignedLongLongIntVal * SageBuilder::buildUnsignedLongLongIntVal | ( | unsigned long long | v = 0 | ) |
Build an unsigned long long integer.
Definition at line 4830 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgUnsignedLongLongIntVal * SageBuilder::buildUnsignedLongLongIntValHex | ( | unsigned long long | v = 0 | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4838 of file sageBuilder.C.
References Rose::StringUtility::intToHex(), and SageInterface::setOneSourcePositionForTransformation().
SgUnsignedLongLongIntVal * SageBuilder::buildUnsignedLongLongIntVal_nfi | ( | unsigned long long | v, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4846 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgJovialBitVal * SageBuilder::buildJovialBitVal_nfi | ( | const std::string & | str | ) |
Build a Jovial bit value expression.
Definition at line 4854 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgTemplateParameterVal * SageBuilder::buildTemplateParameterVal | ( | int | template_parameter_position = -1 | ) |
Build an template parameter value expression.
Definition at line 4879 of file sageBuilder.C.
References SgNode::get_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgTemplateParameterVal * SageBuilder::buildTemplateParameterVal_nfi | ( | int | template_parameter_position, |
const std::string & | str | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 4891 of file sageBuilder.C.
References SgNode::get_parent(), and SageInterface::setOneSourcePositionNull().
SgTemplateType * SageBuilder::buildTemplateType | ( | SgName | name = "" | ) |
Build a template type, used for template parameter and later argument.
Definition at line 4862 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgTemplateParameter * SageBuilder::buildTemplateParameter | ( | SgTemplateParameter::template_parameter_enum | parameterType, |
SgType * | t | ||
) |
Build a template parameter, passing enum kind and SgTemplateType template_parameter_enum { parameter_undefined = 0, type_parameter = 1, nontype_parameter = 2, template_parameter = 3}.
Definition at line 4870 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgNonrealDecl * SageBuilder::buildNonrealDecl | ( | const SgName & | name, |
SgDeclarationScope * | scope, | ||
SgDeclarationScope * | child_scope = NULL |
||
) |
Build a declaration of a non-real class or class-member representing template parameters and their members.
Definition at line 4905 of file sageBuilder.C.
References SgNonrealType::class_name(), SgDeclarationScope::class_name(), SgNonrealDecl::class_name(), SgNonrealSymbol::class_name(), SgLocatedNode::get_endOfConstruct(), SgLocatedNode::get_startOfConstruct(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), Sg_File_Info::setCompilerGenerated(), and SageInterface::setSourcePosition().
Referenced by buildNonrealType().
SgNonrealRefExp * SageBuilder::buildNonrealRefExp_nfi | ( | SgNonrealSymbol * | sym | ) |
Build a reference to the non-real declaration of a member of a non-real class.
Definition at line 6031 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgUpcThreads * SageBuilder::buildUpcThreads | ( | ) |
Build UPC THREADS (integer expression)
Definition at line 4962 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgUpcThreads * SageBuilder::buildUpcThreads_nfi | ( | ) |
Build UPC THREADS (integer expression)
Definition at line 4971 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgUpcMythread * SageBuilder::buildUpcMythread | ( | ) |
Build UPC MYTHREAD (integer expression)
Definition at line 4980 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgUpcMythread * SageBuilder::buildUpcMythread_nfi | ( | ) |
Build UPC MYTHREAD (integer expression)
Definition at line 4989 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
Build this pointer.
Definition at line 4997 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5005 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgSuperExp * SageBuilder::buildSuperExp | ( | SgClassSymbol * | sym | ) |
Build super pointer.
Definition at line 5013 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgSuperExp * SageBuilder::buildSuperExp_nfi | ( | SgClassSymbol * | sym | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5021 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgClassExp * SageBuilder::buildClassExp | ( | SgClassSymbol * | sym | ) |
Build class pointer.
Definition at line 5029 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgClassExp * SageBuilder::buildClassExp_nfi | ( | SgClassSymbol * | sym | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5037 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgLambdaRefExp * SageBuilder::buildLambdaRefExp | ( | SgType * | return_type, |
SgFunctionParameterList * | params, | ||
SgScopeStatement * | scope | ||
) |
Build lambda expression.
Definition at line 9583 of file sageBuilder.C.
References buildDefiningFunctionDeclaration(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
ROSE_DLL_API SgAddressOfOp * SageBuilder::buildAddressOfOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5146 of file sageBuilder.C.
Referenced by SageInterface::createTempVariableForExpression().
ROSE_DLL_API SgAddressOfOp * SageBuilder::buildAddressOfOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5146 of file sageBuilder.C.
ROSE_DLL_API SgBitComplementOp * SageBuilder::buildBitComplementOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5147 of file sageBuilder.C.
ROSE_DLL_API SgBitComplementOp * SageBuilder::buildBitComplementOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5147 of file sageBuilder.C.
ROSE_DLL_API SgMinusOp * SageBuilder::buildMinusOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5148 of file sageBuilder.C.
Referenced by SageInterface::loopCollapsing().
ROSE_DLL_API SgMinusOp * SageBuilder::buildMinusOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5148 of file sageBuilder.C.
ROSE_DLL_API SgNotOp * SageBuilder::buildNotOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5149 of file sageBuilder.C.
ROSE_DLL_API SgNotOp * SageBuilder::buildNotOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5149 of file sageBuilder.C.
ROSE_DLL_API SgPointerDerefExp * SageBuilder::buildPointerDerefExp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5150 of file sageBuilder.C.
Referenced by SageInterface::createTempVariableForExpression().
ROSE_DLL_API SgPointerDerefExp * SageBuilder::buildPointerDerefExp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5150 of file sageBuilder.C.
ROSE_DLL_API SgUnaryAddOp * SageBuilder::buildUnaryAddOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5151 of file sageBuilder.C.
ROSE_DLL_API SgUnaryAddOp * SageBuilder::buildUnaryAddOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5151 of file sageBuilder.C.
ROSE_DLL_API SgMinusMinusOp * SageBuilder::buildMinusMinusOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5153 of file sageBuilder.C.
ROSE_DLL_API SgMinusMinusOp * SageBuilder::buildMinusMinusOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5153 of file sageBuilder.C.
ROSE_DLL_API SgPlusPlusOp * SageBuilder::buildPlusPlusOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5154 of file sageBuilder.C.
ROSE_DLL_API SgPlusPlusOp * SageBuilder::buildPlusPlusOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5154 of file sageBuilder.C.
ROSE_DLL_API SgRealPartOp * SageBuilder::buildRealPartOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5155 of file sageBuilder.C.
ROSE_DLL_API SgRealPartOp * SageBuilder::buildRealPartOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5155 of file sageBuilder.C.
ROSE_DLL_API SgImagPartOp * SageBuilder::buildImagPartOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5156 of file sageBuilder.C.
ROSE_DLL_API SgImagPartOp * SageBuilder::buildImagPartOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5156 of file sageBuilder.C.
ROSE_DLL_API SgConjugateOp * SageBuilder::buildConjugateOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5157 of file sageBuilder.C.
ROSE_DLL_API SgConjugateOp * SageBuilder::buildConjugateOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5157 of file sageBuilder.C.
ROSE_DLL_API SgVarArgStartOneOperandOp * SageBuilder::buildVarArgStartOneOperandOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5158 of file sageBuilder.C.
ROSE_DLL_API SgVarArgStartOneOperandOp * SageBuilder::buildVarArgStartOneOperandOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5158 of file sageBuilder.C.
ROSE_DLL_API SgVarArgEndOp * SageBuilder::buildVarArgEndOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5159 of file sageBuilder.C.
ROSE_DLL_API SgVarArgEndOp * SageBuilder::buildVarArgEndOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5159 of file sageBuilder.C.
ROSE_DLL_API SgAbsOp * SageBuilder::buildAbsOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5152 of file sageBuilder.C.
ROSE_DLL_API SgAbsOp * SageBuilder::buildAbsOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5152 of file sageBuilder.C.
ROSE_DLL_API SgMatrixTransposeOp * SageBuilder::buildMatrixTransposeOp | ( | SgExpression * | op = NULL | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5161 of file sageBuilder.C.
ROSE_DLL_API SgMatrixTransposeOp * SageBuilder::buildMatrixTransposeOp_nfi | ( | SgExpression * | op | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5161 of file sageBuilder.C.
SgCastExp * SageBuilder::buildCastExp | ( | SgExpression * | operand_i = NULL , |
SgType * | expression_type = NULL , |
||
SgCastExp::cast_type_enum | cast_type = SgCastExp::e_C_style_cast |
||
) |
Build a type casting expression.
Definition at line 5165 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by SageInterface::replaceExpressionWithStatement().
SgCastExp * SageBuilder::buildCastExp_nfi | ( | SgExpression * | operand_i, |
SgType * | expression_type, | ||
SgCastExp::cast_type_enum | cast_type | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5215 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgVarArgOp * SageBuilder::buildVarArgOp_nfi | ( | SgExpression * | operand_i, |
SgType * | expression_type | ||
) |
Build vararg op expression.
Definition at line 5224 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgMinusOp * SageBuilder::buildMinusOp | ( | SgExpression * | operand_i, |
SgUnaryOp::Sgop_mode | a_mode | ||
) |
Build – expression, Sgop_mode is a value of either SgUnaryOp::prefix or SgUnaryOp::postfix.
Definition at line 5248 of file sageBuilder.C.
References SgUnaryOp::set_mode().
SgMinusOp * SageBuilder::buildMinusOp_nfi | ( | SgExpression * | operand_i, |
SgUnaryOp::Sgop_mode | a_mode | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5256 of file sageBuilder.C.
References SgUnaryOp::set_mode().
SgMinusMinusOp * SageBuilder::buildMinusMinusOp | ( | SgExpression * | operand_i, |
SgUnaryOp::Sgop_mode | a_mode | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5232 of file sageBuilder.C.
References SgUnaryOp::set_mode().
SgMinusMinusOp * SageBuilder::buildMinusMinusOp_nfi | ( | SgExpression * | operand_i, |
SgUnaryOp::Sgop_mode | a_mode | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5240 of file sageBuilder.C.
References SgUnaryOp::set_mode().
SgPlusPlusOp * SageBuilder::buildPlusPlusOp | ( | SgExpression * | operand_i, |
SgUnaryOp::Sgop_mode | a_mode | ||
) |
Build ++x or x++ , specify prefix or postfix using either SgUnaryOp::prefix or SgUnaryOp::postfix.
Definition at line 5264 of file sageBuilder.C.
References SgUnaryOp::set_mode().
SgPlusPlusOp * SageBuilder::buildPlusPlusOp_nfi | ( | SgExpression * | operand_i, |
SgUnaryOp::Sgop_mode | a_mode | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5273 of file sageBuilder.C.
References SgUnaryOp::set_mode().
SgThrowOp * SageBuilder::buildThrowOp | ( | SgExpression * | operand_i, |
SgThrowOp::e_throw_kind | throwKind | ||
) |
Build a ThrowOp expression.
Definition at line 5281 of file sageBuilder.C.
References SgExpression::get_type(), and SageInterface::setOneSourcePositionForTransformation().
SgNewExp * SageBuilder::buildNewExp | ( | SgType * | type, |
SgExprListExp * | exprListExp, | ||
SgConstructorInitializer * | constInit, | ||
SgExpression * | expr, | ||
short int | val, | ||
SgFunctionDeclaration * | funcDecl | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5177 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgDeleteExp * SageBuilder::buildDeleteExp | ( | SgExpression * | variable, |
short | is_array, | ||
short | need_global_specifier, | ||
SgFunctionDeclaration * | deleteOperatorDeclaration | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5193 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgTypeIdOp * SageBuilder::buildTypeIdOp | ( | SgExpression * | operand_expr, |
SgType * | operand_type | ||
) |
DQ (1/25/2013): Added support for typeId operators.
Definition at line 5206 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
ROSE_DLL_API SgAddOp * SageBuilder::buildAddOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5315 of file sageBuilder.C.
Referenced by SageInterface::getForLoopInformations(), SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::loopUnrolling(), and SageInterface::normalizeForLoopTest().
ROSE_DLL_API SgAddOp * SageBuilder::buildAddOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5315 of file sageBuilder.C.
ROSE_DLL_API SgAndAssignOp * SageBuilder::buildAndAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5316 of file sageBuilder.C.
ROSE_DLL_API SgAndAssignOp * SageBuilder::buildAndAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5316 of file sageBuilder.C.
ROSE_DLL_API SgAndOp * SageBuilder::buildAndOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5317 of file sageBuilder.C.
ROSE_DLL_API SgAndOp * SageBuilder::buildAndOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5317 of file sageBuilder.C.
ROSE_DLL_API SgArrowExp * SageBuilder::buildArrowExp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5318 of file sageBuilder.C.
ROSE_DLL_API SgArrowExp * SageBuilder::buildArrowExp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5318 of file sageBuilder.C.
ROSE_DLL_API SgArrowStarOp * SageBuilder::buildArrowStarOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5319 of file sageBuilder.C.
ROSE_DLL_API SgArrowStarOp * SageBuilder::buildArrowStarOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5319 of file sageBuilder.C.
ROSE_DLL_API SgAssignOp * SageBuilder::buildAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5320 of file sageBuilder.C.
Referenced by SageInterface::createTempVariableForExpression(), and SageInterface::insertAfterUsingCommaOp().
ROSE_DLL_API SgAssignOp * SageBuilder::buildAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5320 of file sageBuilder.C.
ROSE_DLL_API SgAtOp * SageBuilder::buildAtOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5321 of file sageBuilder.C.
ROSE_DLL_API SgAtOp * SageBuilder::buildAtOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5321 of file sageBuilder.C.
ROSE_DLL_API SgBitAndOp * SageBuilder::buildBitAndOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5322 of file sageBuilder.C.
ROSE_DLL_API SgBitAndOp * SageBuilder::buildBitAndOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5322 of file sageBuilder.C.
ROSE_DLL_API SgBitOrOp * SageBuilder::buildBitOrOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5323 of file sageBuilder.C.
ROSE_DLL_API SgBitOrOp * SageBuilder::buildBitOrOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5323 of file sageBuilder.C.
ROSE_DLL_API SgBitXorOp * SageBuilder::buildBitXorOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5324 of file sageBuilder.C.
ROSE_DLL_API SgBitXorOp * SageBuilder::buildBitXorOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5324 of file sageBuilder.C.
ROSE_DLL_API SgCommaOpExp * SageBuilder::buildCommaOpExp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5326 of file sageBuilder.C.
Referenced by SageInterface::insertAfterUsingCommaOp(), and SageInterface::insertBeforeUsingCommaOp().
ROSE_DLL_API SgCommaOpExp * SageBuilder::buildCommaOpExp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5326 of file sageBuilder.C.
ROSE_DLL_API SgConcatenationOp * SageBuilder::buildConcatenationOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5327 of file sageBuilder.C.
ROSE_DLL_API SgConcatenationOp * SageBuilder::buildConcatenationOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5327 of file sageBuilder.C.
ROSE_DLL_API SgDivAssignOp * SageBuilder::buildDivAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5328 of file sageBuilder.C.
ROSE_DLL_API SgDivAssignOp * SageBuilder::buildDivAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5328 of file sageBuilder.C.
ROSE_DLL_API SgDivideOp * SageBuilder::buildDivideOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5329 of file sageBuilder.C.
Referenced by SageInterface::loopCollapsing(), and SageInterface::loopUnrolling().
ROSE_DLL_API SgDivideOp * SageBuilder::buildDivideOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5329 of file sageBuilder.C.
ROSE_DLL_API SgDotExp * SageBuilder::buildDotExp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5330 of file sageBuilder.C.
Referenced by buildMemberFunctionCall(), buildMemberFunctionCall(), and SageInterface::normalizeArrowExpWithAddressOfLeftOperand().
ROSE_DLL_API SgDotExp * SageBuilder::buildDotExp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5330 of file sageBuilder.C.
ROSE_DLL_API SgDotStarOp * SageBuilder::buildDotStarOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5331 of file sageBuilder.C.
ROSE_DLL_API SgDotStarOp * SageBuilder::buildDotStarOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5331 of file sageBuilder.C.
ROSE_DLL_API SgEqualityOp * SageBuilder::buildEqualityOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5332 of file sageBuilder.C.
Referenced by SageInterface::loopCollapsing(), and SageInterface::loopUnrolling().
ROSE_DLL_API SgEqualityOp * SageBuilder::buildEqualityOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5332 of file sageBuilder.C.
ROSE_DLL_API SgExponentiationOp * SageBuilder::buildExponentiationOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5334 of file sageBuilder.C.
ROSE_DLL_API SgExponentiationOp * SageBuilder::buildExponentiationOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5334 of file sageBuilder.C.
ROSE_DLL_API SgExponentiationAssignOp * SageBuilder::buildExponentiationAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5335 of file sageBuilder.C.
ROSE_DLL_API SgExponentiationAssignOp * SageBuilder::buildExponentiationAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5335 of file sageBuilder.C.
ROSE_DLL_API SgGreaterOrEqualOp * SageBuilder::buildGreaterOrEqualOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5336 of file sageBuilder.C.
Referenced by SageInterface::loopTiling(), and SageInterface::normalizeForLoopTest().
ROSE_DLL_API SgGreaterOrEqualOp * SageBuilder::buildGreaterOrEqualOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5336 of file sageBuilder.C.
ROSE_DLL_API SgGreaterThanOp * SageBuilder::buildGreaterThanOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5337 of file sageBuilder.C.
ROSE_DLL_API SgGreaterThanOp * SageBuilder::buildGreaterThanOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5337 of file sageBuilder.C.
ROSE_DLL_API SgIntegerDivideOp * SageBuilder::buildIntegerDivideOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5338 of file sageBuilder.C.
ROSE_DLL_API SgIntegerDivideOp * SageBuilder::buildIntegerDivideOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5338 of file sageBuilder.C.
ROSE_DLL_API SgIntegerDivideAssignOp * SageBuilder::buildIntegerDivideAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5339 of file sageBuilder.C.
ROSE_DLL_API SgIntegerDivideAssignOp * SageBuilder::buildIntegerDivideAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5339 of file sageBuilder.C.
ROSE_DLL_API SgIorAssignOp * SageBuilder::buildIorAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5340 of file sageBuilder.C.
ROSE_DLL_API SgIorAssignOp * SageBuilder::buildIorAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5340 of file sageBuilder.C.
ROSE_DLL_API SgIsOp * SageBuilder::buildIsOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5341 of file sageBuilder.C.
ROSE_DLL_API SgIsOp * SageBuilder::buildIsOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5341 of file sageBuilder.C.
ROSE_DLL_API SgIsNotOp * SageBuilder::buildIsNotOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5342 of file sageBuilder.C.
ROSE_DLL_API SgIsNotOp * SageBuilder::buildIsNotOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5342 of file sageBuilder.C.
ROSE_DLL_API SgLessOrEqualOp * SageBuilder::buildLessOrEqualOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5344 of file sageBuilder.C.
Referenced by SageInterface::loopCollapsing(), SageInterface::loopTiling(), and SageInterface::normalizeForLoopTest().
ROSE_DLL_API SgLessOrEqualOp * SageBuilder::buildLessOrEqualOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5344 of file sageBuilder.C.
ROSE_DLL_API SgLessThanOp * SageBuilder::buildLessThanOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5345 of file sageBuilder.C.
Referenced by SageInterface::loopTiling().
ROSE_DLL_API SgLessThanOp * SageBuilder::buildLessThanOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5345 of file sageBuilder.C.
ROSE_DLL_API SgLshiftAssignOp * SageBuilder::buildLshiftAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5346 of file sageBuilder.C.
ROSE_DLL_API SgLshiftAssignOp * SageBuilder::buildLshiftAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5346 of file sageBuilder.C.
ROSE_DLL_API SgLshiftOp * SageBuilder::buildLshiftOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5347 of file sageBuilder.C.
ROSE_DLL_API SgLshiftOp * SageBuilder::buildLshiftOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5347 of file sageBuilder.C.
ROSE_DLL_API SgMembershipOp * SageBuilder::buildMembershipOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5349 of file sageBuilder.C.
ROSE_DLL_API SgMembershipOp * SageBuilder::buildMembershipOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5349 of file sageBuilder.C.
ROSE_DLL_API SgMinusAssignOp * SageBuilder::buildMinusAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5350 of file sageBuilder.C.
Referenced by SageInterface::loopTiling().
ROSE_DLL_API SgMinusAssignOp * SageBuilder::buildMinusAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5350 of file sageBuilder.C.
ROSE_DLL_API SgModAssignOp * SageBuilder::buildModAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5351 of file sageBuilder.C.
ROSE_DLL_API SgModAssignOp * SageBuilder::buildModAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5351 of file sageBuilder.C.
ROSE_DLL_API SgModOp * SageBuilder::buildModOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5352 of file sageBuilder.C.
Referenced by SageInterface::loopCollapsing(), and SageInterface::loopUnrolling().
ROSE_DLL_API SgModOp * SageBuilder::buildModOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5352 of file sageBuilder.C.
ROSE_DLL_API SgMultAssignOp * SageBuilder::buildMultAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5353 of file sageBuilder.C.
ROSE_DLL_API SgMultAssignOp * SageBuilder::buildMultAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5353 of file sageBuilder.C.
ROSE_DLL_API SgMultiplyOp * SageBuilder::buildMultiplyOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5354 of file sageBuilder.C.
Referenced by SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::loopUnrolling(), and SageInterface::normalizeForLoopIncrement().
ROSE_DLL_API SgMultiplyOp * SageBuilder::buildMultiplyOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5354 of file sageBuilder.C.
ROSE_DLL_API SgNonMembershipOp * SageBuilder::buildNonMembershipOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5357 of file sageBuilder.C.
ROSE_DLL_API SgNonMembershipOp * SageBuilder::buildNonMembershipOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5357 of file sageBuilder.C.
ROSE_DLL_API SgNotEqualOp * SageBuilder::buildNotEqualOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5356 of file sageBuilder.C.
ROSE_DLL_API SgNotEqualOp * SageBuilder::buildNotEqualOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5356 of file sageBuilder.C.
ROSE_DLL_API SgOrOp * SageBuilder::buildOrOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5358 of file sageBuilder.C.
ROSE_DLL_API SgOrOp * SageBuilder::buildOrOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5358 of file sageBuilder.C.
ROSE_DLL_API SgPlusAssignOp * SageBuilder::buildPlusAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5359 of file sageBuilder.C.
Referenced by SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::normalizeForLoopIncrement(), and SageInterface::setLoopStride().
ROSE_DLL_API SgPlusAssignOp * SageBuilder::buildPlusAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5359 of file sageBuilder.C.
ROSE_DLL_API SgPntrArrRefExp * SageBuilder::buildPntrArrRefExp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5360 of file sageBuilder.C.
ROSE_DLL_API SgPntrArrRefExp * SageBuilder::buildPntrArrRefExp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5360 of file sageBuilder.C.
ROSE_DLL_API SgRemOp * SageBuilder::buildRemOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5361 of file sageBuilder.C.
ROSE_DLL_API SgRemOp * SageBuilder::buildRemOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5361 of file sageBuilder.C.
ROSE_DLL_API SgRshiftAssignOp * SageBuilder::buildRshiftAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5362 of file sageBuilder.C.
ROSE_DLL_API SgRshiftAssignOp * SageBuilder::buildRshiftAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5362 of file sageBuilder.C.
ROSE_DLL_API SgJavaUnsignedRshiftAssignOp * SageBuilder::buildJavaUnsignedRshiftAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5363 of file sageBuilder.C.
ROSE_DLL_API SgJavaUnsignedRshiftAssignOp * SageBuilder::buildJavaUnsignedRshiftAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5363 of file sageBuilder.C.
ROSE_DLL_API SgReplicationOp * SageBuilder::buildReplicationOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5375 of file sageBuilder.C.
ROSE_DLL_API SgReplicationOp * SageBuilder::buildReplicationOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5375 of file sageBuilder.C.
ROSE_DLL_API SgRshiftOp * SageBuilder::buildRshiftOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5365 of file sageBuilder.C.
ROSE_DLL_API SgRshiftOp * SageBuilder::buildRshiftOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5365 of file sageBuilder.C.
ROSE_DLL_API SgJavaUnsignedRshiftOp * SageBuilder::buildJavaUnsignedRshiftOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5366 of file sageBuilder.C.
ROSE_DLL_API SgJavaUnsignedRshiftOp * SageBuilder::buildJavaUnsignedRshiftOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5366 of file sageBuilder.C.
ROSE_DLL_API SgScopeOp * SageBuilder::buildScopeOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5367 of file sageBuilder.C.
ROSE_DLL_API SgScopeOp * SageBuilder::buildScopeOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5367 of file sageBuilder.C.
ROSE_DLL_API SgSubtractOp * SageBuilder::buildSubtractOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5368 of file sageBuilder.C.
Referenced by SageInterface::getForLoopInformations(), SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::loopUnrolling(), and SageInterface::normalizeForLoopTest().
ROSE_DLL_API SgSubtractOp * SageBuilder::buildSubtractOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5368 of file sageBuilder.C.
ROSE_DLL_API SgXorAssignOp * SageBuilder::buildXorAssignOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5369 of file sageBuilder.C.
ROSE_DLL_API SgXorAssignOp * SageBuilder::buildXorAssignOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5369 of file sageBuilder.C.
ROSE_DLL_API SgVarArgCopyOp * SageBuilder::buildVarArgCopyOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5371 of file sageBuilder.C.
ROSE_DLL_API SgVarArgCopyOp * SageBuilder::buildVarArgCopyOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5371 of file sageBuilder.C.
ROSE_DLL_API SgVarArgStartOp * SageBuilder::buildVarArgStartOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5372 of file sageBuilder.C.
ROSE_DLL_API SgVarArgStartOp * SageBuilder::buildVarArgStartOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5372 of file sageBuilder.C.
ROSE_DLL_API SgPowerOp * SageBuilder::buildPowerOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5378 of file sageBuilder.C.
ROSE_DLL_API SgPowerOp * SageBuilder::buildPowerOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5378 of file sageBuilder.C.
ROSE_DLL_API SgElementwisePowerOp * SageBuilder::buildElementwisePowerOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5379 of file sageBuilder.C.
ROSE_DLL_API SgElementwisePowerOp * SageBuilder::buildElementwisePowerOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5379 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseMultiplyOp * SageBuilder::buildElementwiseMultiplyOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5380 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseMultiplyOp * SageBuilder::buildElementwiseMultiplyOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5380 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseDivideOp * SageBuilder::buildElementwiseDivideOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5381 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseDivideOp * SageBuilder::buildElementwiseDivideOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5381 of file sageBuilder.C.
ROSE_DLL_API SgLeftDivideOp * SageBuilder::buildLeftDivideOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5382 of file sageBuilder.C.
ROSE_DLL_API SgLeftDivideOp * SageBuilder::buildLeftDivideOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5382 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseLeftDivideOp * SageBuilder::buildElementwiseLeftDivideOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5383 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseLeftDivideOp * SageBuilder::buildElementwiseLeftDivideOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5383 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseAddOp * SageBuilder::buildElementwiseAddOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5384 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseAddOp * SageBuilder::buildElementwiseAddOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5384 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseSubtractOp * SageBuilder::buildElementwiseSubtractOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5385 of file sageBuilder.C.
ROSE_DLL_API SgElementwiseSubtractOp * SageBuilder::buildElementwiseSubtractOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5385 of file sageBuilder.C.
ROSE_DLL_API SgSpaceshipOp * SageBuilder::buildSpaceshipOp | ( | SgExpression * | lhs = NULL , |
SgExpression * | rhs = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5388 of file sageBuilder.C.
ROSE_DLL_API SgSpaceshipOp * SageBuilder::buildSpaceshipOp_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5388 of file sageBuilder.C.
SgConditionalExp * SageBuilder::buildConditionalExp | ( | SgExpression * | test = NULL , |
SgExpression * | a = NULL , |
||
SgExpression * | b = NULL |
||
) |
Build a conditional expression ?:
Definition at line 5437 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by SageInterface::loopCollapsing(), SageInterface::loopTiling(), and SageInterface::loopUnrolling().
SgConditionalExp * SageBuilder::buildConditionalExp_nfi | ( | SgExpression * | test, |
SgExpression * | a, | ||
SgExpression * | b, | ||
SgType * | t | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5447 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgExprListExp * SageBuilder::buildExprListExp | ( | SgExpression * | expr1 = NULL , |
SgExpression * | expr2 = NULL , |
||
SgExpression * | expr3 = NULL , |
||
SgExpression * | expr4 = NULL , |
||
SgExpression * | expr5 = NULL , |
||
SgExpression * | expr6 = NULL , |
||
SgExpression * | expr7 = NULL , |
||
SgExpression * | expr8 = NULL , |
||
SgExpression * | expr9 = NULL , |
||
SgExpression * | expr10 = NULL |
||
) |
Build a SgExprListExp, used for function call parameter list etc.
Definition at line 5818 of file sageBuilder.C.
References SageInterface::appendExpression(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildEquivalenceStatement(), buildFunctionCallExp(), buildFunctionCallExp(), and SageInterface::loopCollapsing().
SgExprListExp * SageBuilder::buildExprListExp | ( | const std::vector< SgExpression * > & | exprs | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5840 of file sageBuilder.C.
References SageInterface::appendExpression(), and SageInterface::setOneSourcePositionForTransformation().
SgExprListExp * SageBuilder::buildExprListExp_nfi | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5852 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgExprListExp * SageBuilder::buildExprListExp_nfi | ( | const std::vector< SgExpression * > & | exprs | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5861 of file sageBuilder.C.
References SageInterface::appendExpression(), and SageInterface::setOneSourcePositionNull().
SgSubscriptExpression * SageBuilder::buildSubscriptExpression_nfi | ( | SgExpression * | lower_bound, |
SgExpression * | upper_bound, | ||
SgExpression * | stride | ||
) |
Build a SgSubscriptExpression, used for array shape expressions. The lower bound and stride may be nullptrs.
Definition at line 5879 of file sageBuilder.C.
References buildNullExpression_nfi(), SgNode::set_parent(), and SageInterface::setSourcePosition().
SgTupleExp * SageBuilder::buildTupleExp | ( | SgExpression * | expr1 = NULL , |
SgExpression * | expr2 = NULL , |
||
SgExpression * | expr3 = NULL , |
||
SgExpression * | expr4 = NULL , |
||
SgExpression * | expr5 = NULL , |
||
SgExpression * | expr6 = NULL , |
||
SgExpression * | expr7 = NULL , |
||
SgExpression * | expr8 = NULL , |
||
SgExpression * | expr9 = NULL , |
||
SgExpression * | expr10 = NULL |
||
) |
Build a SgTupleExp.
Definition at line 5046 of file sageBuilder.C.
References SageInterface::appendExpression(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildTupleExp().
SgTupleExp * SageBuilder::buildTupleExp | ( | const std::vector< SgExpression * > & | exprs | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5066 of file sageBuilder.C.
References SageInterface::appendExpressionList(), and buildTupleExp().
SgTupleExp * SageBuilder::buildTupleExp_nfi | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5074 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
Referenced by buildTupleExp_nfi().
SgTupleExp * SageBuilder::buildTupleExp_nfi | ( | const std::vector< SgExpression * > & | exprs | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5083 of file sageBuilder.C.
References SageInterface::appendExpressionList(), and buildTupleExp_nfi().
SgListExp * SageBuilder::buildListExp | ( | SgExpression * | expr1 = NULL , |
SgExpression * | expr2 = NULL , |
||
SgExpression * | expr3 = NULL , |
||
SgExpression * | expr4 = NULL , |
||
SgExpression * | expr5 = NULL , |
||
SgExpression * | expr6 = NULL , |
||
SgExpression * | expr7 = NULL , |
||
SgExpression * | expr8 = NULL , |
||
SgExpression * | expr9 = NULL , |
||
SgExpression * | expr10 = NULL |
||
) |
Build a SgListExp.
Definition at line 5091 of file sageBuilder.C.
References SageInterface::appendExpression(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildListExp().
SgListExp * SageBuilder::buildListExp | ( | const std::vector< SgExpression * > & | exprs | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5111 of file sageBuilder.C.
References SageInterface::appendExpressionList(), and buildListExp().
SgListExp * SageBuilder::buildListExp_nfi | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5119 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
Referenced by buildListExp_nfi().
SgListExp * SageBuilder::buildListExp_nfi | ( | const std::vector< SgExpression * > & | exprs | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5128 of file sageBuilder.C.
References SageInterface::appendExpressionList(), and buildListExp_nfi().
SgComprehension * SageBuilder::buildComprehension | ( | SgExpression * | target, |
SgExpression * | iter, | ||
SgExprListExp * | ifs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 7572 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgComprehension * SageBuilder::buildComprehension_nfi | ( | SgExpression * | target, |
SgExpression * | iter, | ||
SgExprListExp * | ifs | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 7588 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgListComprehension * SageBuilder::buildListComprehension | ( | SgExpression * | elt, |
SgExprListExp * | generators | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 7602 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgListComprehension * SageBuilder::buildListComprehension_nfi | ( | SgExpression * | elt, |
SgExprListExp * | generators | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 7614 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgSetComprehension * SageBuilder::buildSetComprehension | ( | SgExpression * | elt, |
SgExprListExp * | generators | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 7626 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgSetComprehension * SageBuilder::buildSetComprehension_nfi | ( | SgExpression * | elt, |
SgExprListExp * | generators | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 7638 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgDictionaryComprehension * SageBuilder::buildDictionaryComprehension | ( | SgKeyDatumPair * | kd_pair, |
SgExprListExp * | generators | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 7650 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgDictionaryComprehension * SageBuilder::buildDictionaryComprehension_nfi | ( | SgKeyDatumPair * | kd_pair, |
SgExprListExp * | generators | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 7662 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgVarRefExp * SageBuilder::buildVarRefExp | ( | const SgName & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build SgVarRefExp based on a variable's Sage name. It will lookup the name in the symbol table internally starting from scope. A variable name is unique so type can be inferred (double check this).
It is possible to build a reference to a variable with known name before the variable is declared, especially during bottomup construction of AST. In this case, SgTypeUnknown is used to indicate the variable reference needing postprocessing fix using fixVariableReferences() once the AST is complete and all variable declarations exist. But the side effect is that some get_type() operations may not recognize the unknown type before the fix. So far, I extended SgPointerDerefExp::get_type() and SgPntrArrRefExp::get_type() for SgTypeUnknown. There may be others needing the same extension.
Definition at line 5948 of file sageBuilder.C.
References buildInitializedName(), SgTypeUnknown::createType(), SageInterface::lookupVariableSymbolInParentScopes(), SgNode::set_parent(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
Referenced by buildOpaqueVarRefExp(), buildVarRefExp(), buildVarRefExp(), buildVarRefExp(), buildVarRefExp(), SageInterface::createTempVariableAndReferenceForExpression(), SageInterface::createTempVariableForExpression(), SageInterface::insertAfterUsingCommaOp(), SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::loopUnrolling(), SageInterface::normalizeForLoopInitDeclaration(), SageInterface::replaceExpressionWithStatement(), SageInterface::splitExpression(), and SageInterface::splitVariableDeclaration().
SgVarRefExp * SageBuilder::buildVarRefExp | ( | const std::string & | varName, |
SgScopeStatement * | scope = NULL |
||
) |
Build SgVarRefExp based on a variable's name. It will lookup symbol table internally starting from scope. A variable is unique so type can be inferred.
Definition at line 5941 of file sageBuilder.C.
References buildVarRefExp().
SgVarRefExp * SageBuilder::buildVarRefExp | ( | const char * | varName, |
SgScopeStatement * | scope = NULL |
||
) |
Build a variable reference using a C style char array.
Definition at line 5934 of file sageBuilder.C.
References buildVarRefExp().
SgVarRefExp * SageBuilder::buildVarRefExp | ( | SgVariableSymbol * | varSymbol | ) |
Build a variable reference from an existing symbol.
Definition at line 6009 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgVarRefExp * SageBuilder::buildVarRefExp_nfi | ( | SgVariableSymbol * | varSymbol | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6020 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgVarRefExp * SageBuilder::buildVarRefExp | ( | SgVariableDeclaration * | vardecl | ) |
Build a variable reference from an existing variable declaration. The assumption is a SgVariableDeclartion only declares one variable in the ROSE AST.
Definition at line 5999 of file sageBuilder.C.
References buildVarRefExp(), and SageInterface::getFirstVarSym().
SgVarRefExp * SageBuilder::buildVarRefExp | ( | SgInitializedName * | initname, |
SgScopeStatement * | scope = NULL |
||
) |
Build a variable reference from an initialized name It first tries to grab the associated symbol, then call buildVarRefExp(const SgName& name, SgScopeStatement*) if symbol does not exist.
Definition at line 5907 of file sageBuilder.C.
References buildVarRefExp(), SgInitializedName::get_symbol_from_symbol_table(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
SgVarRefExp * SageBuilder::buildOpaqueVarRefExp | ( | const std::string & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build a variable reference expression at scope to an opaque variable which has unknown information except for its name. Used when referring to an internal variable defined in some headers of runtime libraries.(The headers are not yet inserted into the file during translation). Similar to buildOpaqueType();.
It will declare a hidden int varName at the specified scope to cheat the AST consistence tests.
Definition at line 6043 of file sageBuilder.C.
References buildIntType(), buildVariableDeclaration(), buildVarRefExp(), SgLocatedNode::get_file_info(), SageInterface::getFirstVarSym(), SageInterface::lookupVariableSymbolInParentScopes(), SgNode::set_parent(), topScopeStack(), and Sg_File_Info::unsetOutputInCodeGeneration().
SgCompoundLiteralExp * SageBuilder::buildCompoundLiteralExp_nfi | ( | SgVariableSymbol * | varSymbol | ) |
Build function for compound literals (uses a SgVariableSymbol and is similar to buildVarRefExp_nfi()).
Definition at line 6083 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgCompoundLiteralExp * SageBuilder::buildCompoundLiteralExp | ( | SgVariableSymbol * | varSymbol | ) |
Build function for compound literals (uses a SgVariableSymbol and is similar to buildVarRefExp()).
Definition at line 6096 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgLabelRefExp * SageBuilder::buildLabelRefExp | ( | SgLabelSymbol * | s | ) |
Build a Fortran numeric label ref exp.
Definition at line 6108 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
Referenced by buildGotoStatement(), and SageInterface::setFortranNumericLabel().
SgFunctionRefExp * SageBuilder::buildFunctionRefExp | ( | const SgName & | name, |
const SgType * | func_type, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build SgFunctionRefExp based on a C++ function's name and function type. It will lookup symbol table internally starting from scope. A hidden prototype will be created internally to introduce a new function symbol if the function symbol cannot be found.
Definition at line 6152 of file sageBuilder.C.
References buildFunctionParameterList(), SgStorageModifier::e_default, SageInterface::getGlobalScope(), SageInterface::is_Fortran_language(), SageInterface::is_Jovial_language(), SageInterface::lookupFunctionSymbolInParentScopes(), SgStorageModifier::setExtern(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
Referenced by buildFunctionCallExp(), buildFunctionCallExp(), buildFunctionRefExp(), buildFunctionRefExp(), buildFunctionRefExp(), and buildFunctionRefExp().
SgFunctionRefExp * SageBuilder::buildFunctionRefExp | ( | const char * | name, |
const SgType * | func_type, | ||
SgScopeStatement * | scope = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6202 of file sageBuilder.C.
References buildFunctionRefExp().
SgFunctionRefExp * SageBuilder::buildFunctionRefExp | ( | const SgName & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build SgFunctionRefExp based on a C function's name. It will lookup symbol table internally starting from scope and return the first matching function.
Lookup a C style function symbol to create a function reference expression to it.
Definition at line 6326 of file sageBuilder.C.
References buildFunctionParameterList(), buildFunctionRefExp(), buildIntType(), buildNondefiningFunctionDeclaration(), SageInterface::getGlobalScope(), SageInterface::lookupFunctionSymbolInParentScopes(), SgStorageModifier::setExtern(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
SgFunctionRefExp * SageBuilder::buildFunctionRefExp | ( | const char * | name, |
SgScopeStatement * | scope = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6369 of file sageBuilder.C.
References buildFunctionRefExp().
SgFunctionRefExp * SageBuilder::buildFunctionRefExp | ( | const SgFunctionDeclaration * | func_decl | ) |
Build SgFunctionRefExp based on a function's declaration.
Definition at line 6210 of file sageBuilder.C.
References buildFunctionRefExp(), SgDeclarationStatement::get_definingDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), and SgDeclarationStatement::get_symbol_from_symbol_table().
SgFunctionRefExp * SageBuilder::buildFunctionRefExp | ( | SgFunctionSymbol * | sym | ) |
Build SgFunctionRefExp based on a function's symbol.
Definition at line 6239 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgFunctionRefExp * SageBuilder::buildFunctionRefExp_nfi | ( | SgFunctionSymbol * | sym | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6249 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgTemplateFunctionRefExp * SageBuilder::buildTemplateFunctionRefExp_nfi | ( | SgTemplateFunctionSymbol * | sym | ) |
DQ (12/15/2011): Adding template declaration support to the AST.
Definition at line 6259 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgTemplateMemberFunctionRefExp * SageBuilder::buildTemplateMemberFunctionRefExp_nfi | ( | SgTemplateMemberFunctionSymbol * | sym, |
bool | virtual_call, | ||
bool | need_qualifier | ||
) |
DQ (12/29/2011): Adding template declaration support to the AST.
Definition at line 6277 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgMemberFunctionRefExp * SageBuilder::buildMemberFunctionRefExp_nfi | ( | SgMemberFunctionSymbol * | sym, |
bool | virtual_call, | ||
bool | need_qualifier | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6287 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgMemberFunctionRefExp * SageBuilder::buildMemberFunctionRefExp | ( | SgMemberFunctionSymbol * | sym, |
bool | virtual_call, | ||
bool | need_qualifier | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6297 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
Referenced by buildFunctionCallExp(), buildMemberFunctionCall(), and buildMemberFunctionCall().
SgClassNameRefExp * SageBuilder::buildClassNameRefExp_nfi | ( | SgClassSymbol * | sym | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6307 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgClassNameRefExp * SageBuilder::buildClassNameRefExp | ( | SgClassSymbol * | sym | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6316 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgFunctionCallExp * SageBuilder::buildFunctionCallExp | ( | SgFunctionSymbol * | sym, |
SgExprListExp * | parameters = NULL |
||
) |
Build a function call expression.
Definition at line 6446 of file sageBuilder.C.
References buildExprListExp(), buildFunctionRefExp(), buildMemberFunctionRefExp(), SgFunctionRefExp::get_type(), SgMemberFunctionRefExp::get_type(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildFunctionCallStmt(), buildFunctionCallStmt(), buildMemberFunctionCall(), and buildMemberFunctionCall().
SgFunctionCallExp * SageBuilder::buildFunctionCallExp_nfi | ( | SgExpression * | f, |
SgExprListExp * | parameters = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6488 of file sageBuilder.C.
References SgExpression::get_type(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgFunctionCallExp * SageBuilder::buildFunctionCallExp | ( | SgExpression * | f, |
SgExprListExp * | parameters = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6506 of file sageBuilder.C.
References SgExpression::get_type(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgFunctionCallExp * SageBuilder::buildFunctionCallExp | ( | const SgName & | name, |
SgType * | return_type, | ||
SgExprListExp * | parameters = NULL , |
||
SgScopeStatement * | scope = NULL |
||
) |
Build a function call expression,it will automatically search for function symbols internally to build a right function reference etc. It tolerates the lack of the function symbol to support generating calls to library functions whose headers have not yet been inserted.
Definition at line 6421 of file sageBuilder.C.
References buildExprListExp(), buildFunctionParameterTypeList(), buildFunctionRefExp(), buildFunctionType(), SgFunctionRefExp::get_type(), SgNode::set_parent(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
SgFunctionCallExp * SageBuilder::buildMemberFunctionCall | ( | std::string | className, |
SgExpression * | objectExpression, | ||
std::string | functionName, | ||
SgExprListExp * | params, | ||
SgScopeStatement * | scope | ||
) |
Build member function calls.
AST builder functions for template instantiation etc.
Create a member function call This function looks for the function symbol in the given className The function should exist in the class The class should be #included or present in the source file parsed by frontend
Parameters: className: template class name, e.g. vector objectExpression: the variable reference expression to an object of template class instantiation: vector<int> var1; functionName: member function name: size params: function parameter list scope: the scope this function call expression will be inserted into. Credit to Peter's previous work at: projects/MatlabTranslation/src/transformations/MatlabSimpleTransformer.cc
Create a member function call This function looks for the function symbol in the given className The function should exist in the class The class should be #included or present in the source file parsed by frontend
Definition at line 6551 of file sageBuilder.C.
References buildDotExp(), buildFunctionCallExp(), buildMemberFunctionRefExp(), SgDeclarationStatement::get_definingDeclaration(), SageInterface::lookupClassSymbolInParentScopes(), and SageInterface::lookupFunctionSymbolInParentScopes().
SgFunctionCallExp * SageBuilder::buildMemberFunctionCall | ( | SgExpression * | objectExpression, |
SgMemberFunctionSymbol * | functionSymbol, | ||
SgExprListExp * | params | ||
) |
Build member function calls. objectExpression: the variable reference expression to an object of template class instantiation: vector<int> var1;.
Definition at line 6578 of file sageBuilder.C.
References buildDotExp(), buildFunctionCallExp(), and buildMemberFunctionRefExp().
SgTypeTraitBuiltinOperator * SageBuilder::buildTypeTraitBuiltinOperator | ( | SgName | functionName, |
SgNodePtrList | parameters | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 6586 of file sageBuilder.C.
SgCudaKernelCallExp * SageBuilder::buildCudaKernelCallExp_nfi | ( | SgExpression * | kernel, |
SgExprListExp * | parameters = NULL , |
||
SgCudaKernelExecConfig * | config = NULL |
||
) |
Build a CUDA kernel call expression (kernel<<<config>>>(parameters))
Definition at line 6606 of file sageBuilder.C.
References SgExpression::get_type(), SgNode::set_parent(), SageInterface::setOneSourcePositionNull(), and SgNode::unparseToString().
SgCudaKernelExecConfig * SageBuilder::buildCudaKernelExecConfig_nfi | ( | SgExpression * | grid = NULL , |
SgExpression * | blocks = NULL , |
||
SgExpression * | shared = NULL , |
||
SgExpression * | stream = NULL |
||
) |
Build a CUDA kernel execution configuration (<<<grid, blocks, shared, stream>>>)
Definition at line 6645 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgAssignInitializer * SageBuilder::buildAssignInitializer | ( | SgExpression * | operand_i = NULL , |
SgType * | expression_type = NULL |
||
) |
Build the rhs of a variable declaration which includes an assignment.
Definition at line 5491 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by SageInterface::createTempVariableAndReferenceForExpression(), SageInterface::createTempVariableForExpression(), SageInterface::loopCollapsing(), SageInterface::loopUnrolling(), SageInterface::mergeAssignmentWithDeclaration(), SageInterface::mergeDeclarationWithAssignment(), SageInterface::moveVariableDeclaration(), SageInterface::replaceExpressionWithStatement(), and SageInterface::splitExpression().
SgAssignInitializer * SageBuilder::buildAssignInitializer_nfi | ( | SgExpression * | operand_i = NULL , |
SgType * | expression_type = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5505 of file sageBuilder.C.
References SgExpression::set_need_paren(), SgNode::set_parent(), and SageInterface::setSourcePosition().
SgAggregateInitializer * SageBuilder::buildAggregateInitializer | ( | SgExprListExp * | initializers = NULL , |
SgType * | type = NULL |
||
) |
Build an aggregate initializer.
Definition at line 5523 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgAggregateInitializer * SageBuilder::buildAggregateInitializer_nfi | ( | SgExprListExp * | initializers, |
SgType * | type = NULL |
||
) |
Build an aggregate initializer.
Definition at line 5537 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgCompoundInitializer * SageBuilder::buildCompoundInitializer | ( | SgExprListExp * | initializers = NULL , |
SgType * | type = NULL |
||
) |
Build a compound initializer, for vector type initialization.
Definition at line 5551 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgCompoundInitializer * SageBuilder::buildCompoundInitializer_nfi | ( | SgExprListExp * | initializers, |
SgType * | type = NULL |
||
) |
Build a compound initializer, for vector type initialization.
Definition at line 5564 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgConstructorInitializer * SageBuilder::buildConstructorInitializer | ( | SgMemberFunctionDeclaration * | declaration, |
SgExprListExp * | args, | ||
SgType * | expression_type, | ||
bool | need_name, | ||
bool | need_qualifier, | ||
bool | need_parenthesis_after_name, | ||
bool | associated_class_unknown | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5578 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgConstructorInitializer * SageBuilder::buildConstructorInitializer_nfi | ( | SgMemberFunctionDeclaration * | declaration, |
SgExprListExp * | args, | ||
SgType * | expression_type, | ||
bool | need_name, | ||
bool | need_qualifier, | ||
bool | need_parenthesis_after_name, | ||
bool | associated_class_unknown | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5610 of file sageBuilder.C.
References SgLocatedNode::get_startOfConstruct(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgBracedInitializer * SageBuilder::buildBracedInitializer | ( | SgExprListExp * | initializers = NULL , |
SgType * | expression_type = NULL |
||
) |
Build an braced initializer.
Definition at line 5648 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgBracedInitializer * SageBuilder::buildBracedInitializer_nfi | ( | SgExprListExp * | initializers = NULL , |
SgType * | expression_type = NULL |
||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 5660 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgSizeOfOp * SageBuilder::buildSizeOfOp | ( | SgExpression * | exp = NULL | ) |
Build sizeof() expression with an expression parameter.
Definition at line 5674 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgSizeOfOp * SageBuilder::buildSizeOfOp_nfi | ( | SgExpression * | exp | ) |
Build sizeof() expression with an expression parameter.
Definition at line 5692 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgSizeOfOp * SageBuilder::buildSizeOfOp | ( | SgType * | type = NULL | ) |
Build sizeof() expression with a type parameter.
Definition at line 5710 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgSizeOfOp * SageBuilder::buildSizeOfOp_nfi | ( | SgType * | type | ) |
Build sizeof() expression with a type parameter.
Definition at line 5720 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgAlignOfOp * SageBuilder::buildAlignOfOp | ( | SgExpression * | exp = NULL | ) |
Build alignof() expression with an expression parameter.
Definition at line 5730 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgAlignOfOp * SageBuilder::buildAlignOfOp_nfi | ( | SgExpression * | exp | ) |
Build alignof() expression with an expression parameter.
Definition at line 5747 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgAlignOfOp * SageBuilder::buildAlignOfOp | ( | SgType * | type = NULL | ) |
Build alignof() expression with a type parameter.
Definition at line 5800 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgAlignOfOp * SageBuilder::buildAlignOfOp_nfi | ( | SgType * | type | ) |
Build alignof() expression with a type parameter.
Definition at line 5809 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgNoexceptOp * SageBuilder::buildNoexceptOp | ( | SgExpression * | exp = NULL | ) |
Build noexcept operator expression with an expression parameter.
Definition at line 5764 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgNoexceptOp * SageBuilder::buildNoexceptOp_nfi | ( | SgExpression * | exp | ) |
Build noexcept operator expression with an expression parameter.
Definition at line 5782 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgJavaInstanceOfOp * SageBuilder::buildJavaInstanceOfOp | ( | SgExpression * | exp = NULL , |
SgType * | type = NULL |
||
) |
This is part of Java specific operator support.
Definition at line 7475 of file sageBuilder.C.
References SgTypeBool::createType(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgTypeExpression * SageBuilder::buildTypeExpression | ( | SgType * | type | ) |
DQ (7/24/2014): Adding support for c11 generic operands.
Definition at line 9597 of file sageBuilder.C.
References SageInterface::setSourcePosition().
SgFunctionParameterRefExp * SageBuilder::buildFunctionParameterRefExp | ( | int | parameter_number, |
int | parameter_level | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9606 of file sageBuilder.C.
References SageInterface::setSourcePosition().
SgFunctionParameterRefExp * SageBuilder::buildFunctionParameterRefExp_nfi | ( | int | parameter_number, |
int | parameter_level | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9618 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgLambdaExp * SageBuilder::buildLambdaExp | ( | SgLambdaCaptureList * | lambda_capture_list, |
SgClassDeclaration * | lambda_closure_class, | ||
SgFunctionDeclaration * | lambda_function | ||
) |
DQ (9/3/2014): Adding support for C++11 Lambda expressions.
Definition at line 9629 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setSourcePosition().
SgLambdaExp * SageBuilder::buildLambdaExp_nfi | ( | SgLambdaCaptureList * | lambda_capture_list, |
SgClassDeclaration * | lambda_closure_class, | ||
SgFunctionDeclaration * | lambda_function | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9666 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgLambdaCapture * SageBuilder::buildLambdaCapture | ( | SgExpression * | capture_variable, |
SgExpression * | source_closure_variable, | ||
SgExpression * | closure_variable | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9724 of file sageBuilder.C.
References SageInterface::setSourcePosition().
SgLambdaCapture * SageBuilder::buildLambdaCapture_nfi | ( | SgExpression * | capture_variable, |
SgExpression * | source_closure_variable, | ||
SgExpression * | closure_variable | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9734 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgLambdaCaptureList * SageBuilder::buildLambdaCaptureList | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9745 of file sageBuilder.C.
References SageInterface::setSourcePosition().
SgLambdaCaptureList * SageBuilder::buildLambdaCaptureList_nfi | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9755 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgFoldExpression * SageBuilder::buildFoldExpression | ( | SgExpression * | operands, |
std::string | operator_token_string, | ||
bool | is_left_associative | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9766 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgFoldExpression * SageBuilder::buildFoldExpression_nfi | ( | SgExpression * | operands, |
std::string | operator_token_string, | ||
bool | is_left_associative | ||
) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9776 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgAwaitExpression * SageBuilder::buildAwaitExpression | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9787 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgAwaitExpression * SageBuilder::buildAwaitExpression_nfi | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9796 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgChooseExpression * SageBuilder::buildChooseExpression | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9807 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgChooseExpression * SageBuilder::buildChooseExpression_nfi | ( | ) |
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 9817 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgRangeExp * SageBuilder::buildRangeExp | ( | SgExpression * | start | ) |
Build a Matlab range expression like start:end or start:stride:end.
Definition at line 9521 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgMatrixExp * SageBuilder::buildMatrixExp | ( | SgExprListExp * | firstRow | ) |
Build a Matlab Matrix.
Definition at line 9549 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgMagicColonExp * SageBuilder::buildMagicColonExp | ( | ) |
Build a Matlab colon expression :
Definition at line 9560 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgMatlabForStatement * SageBuilder::buildMatlabForStatement | ( | SgExpression * | loop_index, |
SgExpression * | loop_range, | ||
SgBasicBlock * | loop_body | ||
) |
Build a For-loop statement for matlab.
Definition at line 7371 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgRangeExp * SageBuilder::buildRangeExp | ( | SgExpression * | start, |
SgExpression * | end, | ||
SgExpression * | stride | ||
) |
Definition at line 9531 of file sageBuilder.C.
SgInitializedName * SageBuilder::buildInitializedName | ( | const SgName & | name, |
SgType * | type, | ||
SgInitializer * | init = NULL |
||
) |
Initialized names are tricky, their scope vary depending on context, so scope and symbol information are not needed until the initialized name is being actually used somewhere.
e.g the scope of arguments of functions are different for defining and nondefining functions.
Definition at line 1235 of file sageBuilder.C.
References SageInterface::setSourcePositionAtRootAndAllChildren().
Referenced by buildFunctionParameterList(), buildInitializedName(), buildInitializedName(), and buildVarRefExp().
SgInitializedName * SageBuilder::buildInitializedName | ( | const std::string & | name, |
SgType * | type | ||
) |
Initialized names are tricky, their scope vary depending on context, so scope and symbol information are not needed until the initialized name is being actually used somewhere.
e.g the scope of arguments of functions are different for defining and nondefining functions.
Definition at line 1249 of file sageBuilder.C.
References buildInitializedName().
SgInitializedName * SageBuilder::buildInitializedName | ( | const char * | name, |
SgType * | type | ||
) |
Initialized names are tricky, their scope vary depending on context, so scope and symbol information are not needed until the initialized name is being actually used somewhere.
e.g the scope of arguments of functions are different for defining and nondefining functions.
Definition at line 1254 of file sageBuilder.C.
References buildInitializedName().
SgInitializedName * SageBuilder::buildInitializedName_nfi | ( | const SgName & | name, |
SgType * | type, | ||
SgInitializer * | init, | ||
SgVariableDeclaration * | declptr = NULL |
||
) |
Initialized names are tricky, their scope vary depending on context, so scope and symbol information are not needed until the initialized name is being actually used somewhere.
e.g the scope of arguments of functions are different for defining and nondefining functions.
Definition at line 1259 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
Referenced by buildFunctionParameterList_nfi(), and buildVariableDeclaration_nfi().
SgFunctionParameterTypeList * SageBuilder::buildFunctionParameterTypeList | ( | SgFunctionParameterList * | paralist | ) |
Build SgFunctionParameterTypeList from SgFunctionParameterList.
Definition at line 2329 of file sageBuilder.C.
References SgFunctionParameterList::get_args(), SgFunctionParameterTypeList::get_arguments(), and SageInterface::setSourcePositionAtRootAndAllChildren().
Referenced by buildDefiningMemberFunctionDeclaration(), buildFunctionCallExp(), buildFunctionType(), and SageInterface::findJavaMain().
SgFunctionParameterTypeList * SageBuilder::buildFunctionParameterTypeList | ( | SgExprListExp * | expList | ) |
Build SgFunctionParameterTypeList from an expression list, useful when building a function call.
Definition at line 2358 of file sageBuilder.C.
References SgFunctionParameterTypeList::get_arguments(), and SageInterface::setSourcePositionAtRootAndAllChildren().
SgFunctionParameterTypeList * SageBuilder::buildFunctionParameterTypeList | ( | SgType * | type0 = NULL , |
SgType * | type1 = NULL , |
||
SgType * | type2 = NULL , |
||
SgType * | type3 = NULL , |
||
SgType * | type4 = NULL , |
||
SgType * | type5 = NULL , |
||
SgType * | type6 = NULL , |
||
SgType * | type7 = NULL |
||
) |
Build an SgFunctionParameterTypeList from SgTypes. To build an.
Definition at line 2378 of file sageBuilder.C.
References SgFunctionParameterTypeList::get_arguments().
SgVariableDeclaration * SageBuilder::buildVariableDeclaration | ( | const SgName & | name, |
SgType * | type, | ||
SgInitializer * | varInit = NULL , |
||
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1285 of file sageBuilder.C.
References SageInterface::fixVariableDeclaration(), SgLocatedNode::get_endOfConstruct(), SgNode::get_parent(), SgLocatedNode::get_startOfConstruct(), SgVariableDeclaration::get_variables(), SageInterface::getEnclosingProcedure(), SageInterface::is_Fortran_language(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgVariableDefinition::set_vardefn(), SageInterface::setOneSourcePositionForTransformation(), SageInterface::setSourcePositionAtRootAndAllChildren(), and topScopeStack().
Referenced by buildOpaqueVarRefExp(), buildVariableDeclaration(), buildVariableDeclaration(), SageInterface::createTempVariableAndReferenceForExpression(), SageInterface::createTempVariableForExpression(), SageInterface::insertAfterUsingCommaOp(), SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::loopUnrolling(), SageInterface::normalizeForLoopInitDeclaration(), SageInterface::replaceExpressionWithStatement(), and SageInterface::splitExpression().
SgVariableDeclaration * SageBuilder::buildVariableDeclaration | ( | const std::string & | name, |
SgType * | type, | ||
SgInitializer * | varInit = NULL , |
||
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1853 of file sageBuilder.C.
References buildVariableDeclaration().
SgVariableDeclaration * SageBuilder::buildVariableDeclaration | ( | const char * | name, |
SgType * | type, | ||
SgInitializer * | varInit = NULL , |
||
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1860 of file sageBuilder.C.
References buildVariableDeclaration().
SgVariableDeclaration * SageBuilder::buildVariableDeclaration_nfi | ( | const SgName & | name, |
SgType * | type, | ||
SgInitializer * | varInit, | ||
SgScopeStatement * | scope, | ||
bool | builtFromUseOnly = false , |
||
SgStorageModifier::storage_modifier_enum | sm = SgStorageModifier::e_default |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1392 of file sageBuilder.C.
References buildInitializedName_nfi(), SgNode::class_name(), SgScopeStatement::class_name(), SageInterface::fixVariableDeclaration(), SgNode::get_parent(), SageInterface::getFirstInitializedName(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SageInterface::setOneSourcePositionNull(), SageInterface::setSourcePosition(), and topScopeStack().
SgVariableDefinition * SageBuilder::buildVariableDefinition_nfi | ( | SgVariableDeclaration * | decl, |
SgInitializedName * | init_name, | ||
SgInitializer * | init | ||
) |
Build variable definition.
Definition at line 1691 of file sageBuilder.C.
References SgLocatedNode::get_endOfConstruct(), SgLocatedNode::get_file_info(), SgLocatedNode::set_endOfConstruct(), and SgNode::set_parent().
SgTemplateVariableDeclaration * SageBuilder::buildTemplateVariableDeclaration_nfi | ( | const SgName & | name, |
SgType * | type, | ||
SgInitializer * | varInit, | ||
SgScopeStatement * | scope | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1745 of file sageBuilder.C.
References SageInterface::fixVariableDeclaration(), SageInterface::getFirstInitializedName(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SageInterface::setOneSourcePositionNull(), and SageInterface::setSourcePosition().
Referenced by buildTemplateVariableDeclaration().
SgTemplateVariableDeclaration * SageBuilder::buildTemplateVariableDeclaration | ( | const SgName & | name, |
SgType * | type, | ||
SgInitializer * | varInit, | ||
SgScopeStatement * | scope | ||
) |
Build template variable declarations.
Definition at line 1737 of file sageBuilder.C.
References buildTemplateVariableDeclaration_nfi(), and SageInterface::setOneSourcePositionForTransformation().
SgTemplateVariableInstantiation * SageBuilder::buildTemplateVariableInstantiation_nfi | ( | const SgName & | name, |
SgType * | type, | ||
SgInitializer * | varInit, | ||
SgScopeStatement * | scope, | ||
SgTemplateVariableDeclaration * | tpl_decl, | ||
SgTemplateArgumentPtrList & | tpl_args | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1796 of file sageBuilder.C.
References appendTemplateArgumentsToName(), SgType::class_name(), SgInitializedName::class_name(), SgScopeStatement::class_name(), SgTemplateVariableInstantiation::class_name(), SageInterface::fixVariableDeclaration(), SageInterface::getFirstInitializedName(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SageInterface::setOneSourcePositionNull(), and SageInterface::setSourcePosition().
Referenced by buildTemplateVariableInstantiation().
SgTemplateVariableInstantiation * SageBuilder::buildTemplateVariableInstantiation | ( | const SgName & | name, |
SgType * | type, | ||
SgInitializer * | varInit, | ||
SgScopeStatement * | scope, | ||
SgTemplateVariableDeclaration * | tpl_decl, | ||
SgTemplateArgumentPtrList & | tpl_args | ||
) |
Build template variable declarations.
Definition at line 1783 of file sageBuilder.C.
References buildTemplateVariableInstantiation_nfi(), and SageInterface::setOneSourcePositionForTransformation().
SgTypedefDeclaration * SageBuilder::buildTypedefDeclaration | ( | const std::string & | name, |
SgType * | base_type, | ||
SgScopeStatement * | scope = NULL , |
||
bool | has_defining_base = false |
||
) |
Build a typedef declaration, such as: typedef int myint; typedef struct A {..} s_A;.
Build a typedef declaration, such as: typedef int myint;.
Definition at line 1868 of file sageBuilder.C.
References buildTypedefDeclaration_nfi(), and SageInterface::setOneSourcePositionForTransformation().
SgTypedefDeclaration * SageBuilder::buildTypedefDeclaration_nfi | ( | const std::string & | name, |
SgType * | base_type, | ||
SgScopeStatement * | scope = NULL , |
||
bool | has_defining_base = false |
||
) |
Build a typedef declaration, such as: typedef int myint;.
Definition at line 1879 of file sageBuilder.C.
References SgDeclarationStatement::class_name(), SgTypedefType::createType(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgScopeStatement::insert_symbol(), SageInterface::is_Ada_language(), SgDeclarationStatement::search_for_symbol_from_symbol_table(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgTypedefDeclaration::set_scope(), SageInterface::setOneSourcePositionNull(), SgType::stripType(), and topScopeStack().
Referenced by buildTypedefDeclaration().
SgTemplateTypedefDeclaration * SageBuilder::buildTemplateTypedefDeclaration_nfi | ( | const SgName & | name, |
SgType * | base_type, | ||
SgScopeStatement * | scope = NULL , |
||
bool | has_defining_base = false |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1993 of file sageBuilder.C.
References SgScopeStatement::class_name(), SgTypedefType::createType(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::search_for_symbol_from_symbol_table(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgTypedefDeclaration::set_scope(), SageInterface::setOneSourcePositionNull(), and topScopeStack().
ROSE_DLL_API SgTemplateInstantiationTypedefDeclaration * SageBuilder::buildTemplateInstantiationTypedefDeclaration_nfi | ( | SgName & | name, |
SgType * | base_type, | ||
SgScopeStatement * | scope, | ||
bool | has_defining_base, | ||
SgTemplateTypedefDeclaration * | templateTypedefDeclaration, | ||
SgTemplateArgumentPtrList & | templateArgumentsList | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 2121 of file sageBuilder.C.
References appendTemplateArgumentsToName(), SgType::class_name(), SgScopeStatement::class_name(), SgDeclarationStatement::class_name(), SgTemplateInstantiationTypedefDeclaration::class_name(), SgTypedefType::createType(), SgDeclarationStatement::get_definingDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgTypedefDeclaration::get_scope(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::search_for_symbol_from_symbol_table(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgTypedefDeclaration::set_scope(), SageInterface::setOneSourcePositionNull(), and setTemplateArgumentsInDeclaration().
SgFunctionParameterList * SageBuilder::buildFunctionParameterList | ( | SgInitializedName * | in1 = NULL , |
SgInitializedName * | in2 = NULL , |
||
SgInitializedName * | in3 = NULL , |
||
SgInitializedName * | in4 = NULL , |
||
SgInitializedName * | in5 = NULL , |
||
SgInitializedName * | in6 = NULL , |
||
SgInitializedName * | in7 = NULL , |
||
SgInitializedName * | in8 = NULL , |
||
SgInitializedName * | in9 = NULL , |
||
SgInitializedName * | in10 = NULL |
||
) |
Build an empty SgFunctionParameterList, possibly with some initialized names filled in.
Definition at line 2277 of file sageBuilder.C.
References SageInterface::appendArg(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildDefaultConstructor(), buildFunctionParameterList(), buildFunctionParameterList_nfi(), SageInterface::buildFunctionPrototype(), buildFunctionRefExp(), and buildFunctionRefExp().
SgFunctionParameterList * SageBuilder::buildFunctionParameterList_nfi | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 2302 of file sageBuilder.C.
References SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionNull().
SgFunctionParameterList * SageBuilder::buildFunctionParameterList | ( | SgFunctionParameterTypeList * | paraTypeList | ) |
Build an SgFunctionParameterList from SgFunctionParameterTypeList, like (int, float,...), used for parameter list of prototype functions when function type( including parameter type list) is known.
Definition at line 6119 of file sageBuilder.C.
References SageInterface::appendArg(), buildFunctionParameterList(), buildInitializedName(), and SgFunctionParameterTypeList::get_arguments().
SgFunctionParameterList * SageBuilder::buildFunctionParameterList_nfi | ( | SgFunctionParameterTypeList * | paraTypeList | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6136 of file sageBuilder.C.
References SageInterface::appendArg(), buildFunctionParameterList(), buildInitializedName_nfi(), and SgFunctionParameterTypeList::get_arguments().
SgCtorInitializerList * SageBuilder::buildCtorInitializerList_nfi | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 2315 of file sageBuilder.C.
References SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionNull().
void SageBuilder::setTemplateNameInTemplateInstantiations | ( | SgFunctionDeclaration * | func, |
const SgName & | name | ||
) |
DQ (2/11/2012): Added support to set the template name in function template instantiations (member and non-member).
Definition at line 4088 of file sageBuilder.C.
References SgTemplateInstantiationMemberFunctionDecl::get_templateName(), SgTemplateInstantiationFunctionDecl::get_templateName(), SageInterface::hasTemplateSyntax(), SgTemplateInstantiationMemberFunctionDecl::set_templateName(), and SgTemplateInstantiationFunctionDecl::set_templateName().
Referenced by buildDefiningFunctionDeclaration_T().
void SageBuilder::setTemplateArgumentParents | ( | SgDeclarationStatement * | decl | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 986 of file sageBuilder.C.
References SgNode::class_name(), SgDeclarationStatement::class_name(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), getTemplateArgumentList(), SgNode::set_parent(), and testTemplateArgumentParents().
Referenced by buildClassDeclaration_nfi(), buildNondefiningClassDeclaration_nfi(), setTemplateArgumentsInDeclaration(), and setTemplateSpecializationArgumentsInDeclaration().
void SageBuilder::testTemplateArgumentParents | ( | SgDeclarationStatement * | decl | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1084 of file sageBuilder.C.
References SgDeclarationStatement::class_name(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), and getTemplateArgumentList().
Referenced by buildClassDeclaration_nfi(), buildNondefiningTemplateClassDeclaration_nfi(), buildTemplateClassDeclaration_nfi(), setTemplateArgumentParents(), setTemplateArgumentsInDeclaration(), and setTemplateSpecializationArgumentsInDeclaration().
SgTemplateArgumentPtrList * SageBuilder::getTemplateArgumentList | ( | SgDeclarationStatement * | decl | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 787 of file sageBuilder.C.
References SgDeclarationStatement::class_name(), SgTemplateInstantiationDecl::get_templateArguments(), SgTemplateInstantiationMemberFunctionDecl::get_templateArguments(), SgTemplateInstantiationFunctionDecl::get_templateArguments(), and SgDeclarationStatement::variantT().
Referenced by setTemplateArgumentParents(), setTemplateArgumentsInDeclaration(), setTemplateSpecializationArgumentsInDeclaration(), and testTemplateArgumentParents().
void SageBuilder::testTemplateParameterParents | ( | SgDeclarationStatement * | decl | ) |
DQ (9/16/2012): Added function to support setting the template parameters and setting their parents (and for any relevant declaration).
Definition at line 1117 of file sageBuilder.C.
References SgNode::class_name(), SgDeclarationStatement::class_name(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), and getTemplateParameterList().
Referenced by setTemplateParameterParents(), and setTemplateParametersInDeclaration().
void SageBuilder::setTemplateParameterParents | ( | SgDeclarationStatement * | decl | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1044 of file sageBuilder.C.
References SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), getTemplateParameterList(), SgNode::set_parent(), and testTemplateParameterParents().
Referenced by setTemplateParametersInDeclaration().
SgTemplateParameterPtrList * SageBuilder::getTemplateParameterList | ( | SgDeclarationStatement * | decl | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 899 of file sageBuilder.C.
References SgDeclarationStatement::class_name(), and SgDeclarationStatement::variantT().
Referenced by setTemplateParameterParents(), setTemplateParametersInDeclaration(), and testTemplateParameterParents().
void SageBuilder::setTemplateArgumentsInDeclaration | ( | SgDeclarationStatement * | decl, |
SgTemplateArgumentPtrList * | templateArgumentsList_input | ||
) |
DQ (9/16/2012): Added function to support setting the template arguments and setting their parents (and for any relevant declaration).
Definition at line 1159 of file sageBuilder.C.
References getTemplateArgumentList(), setTemplateArgumentParents(), testTemplateArgumentParents(), and SgDeclarationStatement::variantT().
Referenced by buildClassDeclaration_nfi(), buildDefiningFunctionDeclaration_T(), buildNondefiningClassDeclaration_nfi(), and buildTemplateInstantiationTypedefDeclaration_nfi().
void SageBuilder::setTemplateSpecializationArgumentsInDeclaration | ( | SgDeclarationStatement * | decl, |
SgTemplateArgumentPtrList * | templateSpecializationArgumentsList_input | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1185 of file sageBuilder.C.
References getTemplateArgumentList(), setTemplateArgumentParents(), testTemplateArgumentParents(), and SgDeclarationStatement::variantT().
Referenced by buildNondefiningTemplateClassDeclaration_nfi(), and buildTemplateClassDeclaration_nfi().
void SageBuilder::setTemplateParametersInDeclaration | ( | SgDeclarationStatement * | decl, |
SgTemplateParameterPtrList * | templateParametersList_input | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 1208 of file sageBuilder.C.
References getTemplateParameterList(), setTemplateParameterParents(), testTemplateParameterParents(), and SgDeclarationStatement::variantT().
Referenced by buildDefiningFunctionDeclaration_T(), buildNondefiningTemplateClassDeclaration_nfi(), and buildTemplateClassDeclaration_nfi().
SgFunctionDeclaration * SageBuilder::buildNondefiningFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgScopeStatement * | scope = NULL , |
||
SgExprListExp * | decoratorList = NULL , |
||
bool | buildTemplateInstantiation = false , |
||
SgTemplateArgumentPtrList * | templateArgumentsList = NULL , |
||
SgStorageModifier::storage_modifier_enum | sm = SgStorageModifier::e_default |
||
) |
Build a prototype for a function, handle function type, symbol etc transparently.
Definition at line 3467 of file sageBuilder.C.
References SgFile::e_Fortran_language, SageInterface::getEnclosingFileNode(), and SageInterface::is_Fortran_language().
Referenced by buildDefiningFunctionDeclaration(), SageInterface::buildFunctionPrototype(), buildFunctionRefExp(), and buildNondefiningFunctionDeclaration().
SgFunctionDeclaration * SageBuilder::buildNondefiningFunctionDeclaration | ( | const SgFunctionDeclaration * | funcdecl, |
SgScopeStatement * | scope = NULL , |
||
SgExprListExp * | decoratorList = NULL |
||
) |
Build a prototype for an existing function declaration (defining or nondefining is fine)
Build a prototype for an existing function declaration (defining or nondefining )
Definition at line 3431 of file sageBuilder.C.
References buildNondefiningFunctionDeclaration(), SageInterface::findFunctionType(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgStorageModifier::isExtern(), and SgStorageModifier::setExtern().
SgTemplateFunctionDeclaration * SageBuilder::buildNondefiningTemplateFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgScopeStatement * | scope = NULL , |
||
SgExprListExp * | decoratorList = NULL , |
||
SgTemplateParameterPtrList * | templateParameterList = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 3533 of file sageBuilder.C.
References SgStorageModifier::e_default, SgDeclarationStatement::get_firstNondefiningDeclaration(), SgDeclarationStatement::get_symbol_from_symbol_table(), and SgFunctionDeclaration::get_symbol_from_symbol_table().
Referenced by SageInterface::buildFunctionPrototype().
SgTemplateFunctionDeclaration * SageBuilder::buildDefiningTemplateFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgScopeStatement * | scope, | ||
SgExprListExp * | decoratorList, | ||
SgTemplateFunctionDeclaration * | first_nondefining_declaration | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 3558 of file sageBuilder.C.
References SgDeclarationStatement::get_firstNondefiningDeclaration().
SgMemberFunctionDeclaration * SageBuilder::buildDefaultConstructor | ( | SgClassType * | classType | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 111 of file sageBuilder.C.
References buildDefiningMemberFunctionDeclaration(), buildFunctionParameterList(), buildNondefiningMemberFunctionDeclaration(), buildVoidType(), SgDeclarationStatement::get_definingDeclaration(), and SgDeclarationStatement::get_firstNondefiningDeclaration().
Referenced by SageInterface::addDefaultConstructorIfRequired().
SgMemberFunctionDeclaration * SageBuilder::buildNondefiningMemberFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgScopeStatement * | scope, | ||
SgExprListExp * | decoratorList, | ||
unsigned int | functionConstVolatileFlags, | ||
bool | buildTemplateInstantiation, | ||
SgTemplateArgumentPtrList * | templateArgumentsList | ||
) |
Build a prototype member function declaration.
Definition at line 3591 of file sageBuilder.C.
References SgStorageModifier::e_default, SgMemberFunctionDeclaration::get_CtorInitializerList(), SgClassDefinition::get_declaration(), SgMemberFunctionDeclaration::set_associatedClassDeclaration(), SgDeclarationStatement::set_definingDeclaration(), and SgDeclarationStatement::set_firstNondefiningDeclaration().
Referenced by buildDefaultConstructor(), buildDefiningMemberFunctionDeclaration(), SageInterface::buildFunctionPrototype(), and buildNondefiningMemberFunctionDeclaration().
SgTemplateMemberFunctionDeclaration * SageBuilder::buildNondefiningTemplateMemberFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgScopeStatement * | scope, | ||
SgExprListExp * | decoratorList, | ||
unsigned int | functionConstVolatileFlags, | ||
SgTemplateParameterPtrList * | templateParameterList | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 3645 of file sageBuilder.C.
References SgFunctionType::class_name(), SgScopeStatement::class_name(), SgTemplateMemberFunctionDeclaration::class_name(), SgStorageModifier::e_default, e_sourcePositionTransformation, SgMemberFunctionDeclaration::get_CtorInitializerList(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgDeclarationStatement::get_symbol_from_symbol_table(), SgMemberFunctionDeclaration::get_symbol_from_symbol_table(), SgScopeStatement::get_symbol_table(), SgSymbolTable::print(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), and SourcePositionClassificationMode.
Referenced by SageInterface::buildFunctionPrototype().
SgTemplateMemberFunctionDeclaration * SageBuilder::buildDefiningTemplateMemberFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgScopeStatement * | scope, | ||
SgExprListExp * | decoratorList, | ||
unsigned int | functionConstVolatileFlags, | ||
SgTemplateMemberFunctionDeclaration * | first_nondefing_declaration | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 3576 of file sageBuilder.C.
References SgDeclarationStatement::get_firstNondefiningDeclaration().
SgMemberFunctionDeclaration * SageBuilder::buildDefiningMemberFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgScopeStatement * | scope, | ||
SgExprListExp * | decoratorList, | ||
bool | buildTemplateInstantiation, | ||
unsigned int | functionConstVolatileFlags, | ||
SgMemberFunctionDeclaration * | first_nondefinng_declaration, | ||
SgTemplateArgumentPtrList * | templateArgumentsList | ||
) |
Build a defining ( non-prototype) member function declaration.
Definition at line 3719 of file sageBuilder.C.
References appendTemplateArgumentsToName(), SgMemberFunctionType::class_name(), SgTemplateInstantiationMemberFunctionDecl::class_name(), SgMemberFunctionDeclaration::get_CtorInitializerList(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgDeclarationStatement::set_definingDeclaration(), and SgDeclarationStatement::set_firstNondefiningDeclaration().
Referenced by buildDefaultConstructor(), and buildDefiningMemberFunctionDeclaration().
SgMemberFunctionDeclaration * SageBuilder::buildNondefiningMemberFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parameter_list, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 3494 of file sageBuilder.C.
References buildNondefiningMemberFunctionDeclaration().
SgMemberFunctionDeclaration * SageBuilder::buildDefiningMemberFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parameter_list, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 3503 of file sageBuilder.C.
References buildDefiningMemberFunctionDeclaration(), buildFunctionParameterTypeList(), buildMemberFunctionType(), buildNondefiningMemberFunctionDeclaration(), and topScopeStack().
SgFunctionDeclaration * SageBuilder::buildDefiningFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgScopeStatement * | scope, | ||
SgExprListExp * | decoratorList, | ||
bool | buildTemplateInstantiation = false , |
||
SgFunctionDeclaration * | first_nondefinng_declaration = NULL , |
||
SgTemplateArgumentPtrList * | templateArgumentsList = NULL |
||
) |
Build a function declaration with a function body.
Definition at line 4141 of file sageBuilder.C.
Referenced by buildDefiningFunctionDeclaration(), and buildLambdaRefExp().
SgFunctionDeclaration * SageBuilder::buildDefiningFunctionDeclaration | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parameter_list, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 4172 of file sageBuilder.C.
References buildDefiningFunctionDeclaration(), buildFunctionType(), buildNondefiningFunctionDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), and topScopeStack().
SgProcedureHeaderStatement * SageBuilder::buildProcedureHeaderStatement | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parameter_list, | ||
SgProcedureHeaderStatement::subprogram_kind_enum | kind, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 4238 of file sageBuilder.C.
References buildFunctionType(), buildProcedureHeaderStatement(), SgStorageModifier::e_default, SgDeclarationStatement::get_firstNondefiningDeclaration(), and topScopeStack().
Referenced by buildProcedureHeaderStatement().
SgProcedureHeaderStatement * SageBuilder::buildProcedureHeaderStatement | ( | const char * | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
SgProcedureHeaderStatement::subprogram_kind_enum | kind, | ||
SgScopeStatement * | scope, | ||
SgProcedureHeaderStatement * | first_nondefining_declaration | ||
) |
Build a Fortran subroutine or procedure.
Definition at line 4274 of file sageBuilder.C.
References buildVoidType(), SgProcedureHeaderStatement::e_block_data_subprogram_kind, SgProcedureHeaderStatement::e_function_subprogram_kind, SgProcedureHeaderStatement::e_subroutine_subprogram_kind, and Rose::Diagnostics::mlog.
SgProcedureHeaderStatement * SageBuilder::buildNondefiningProcedureHeaderStatement | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | param_list, | ||
SgProcedureHeaderStatement::subprogram_kind_enum | kind, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build a nondefining SgProcedureHeaderStatement, handle function type, symbol etc transparently.
Definition at line 4211 of file sageBuilder.C.
References SgStorageModifier::e_default, SgDeclarationStatement::get_firstNondefiningDeclaration(), and topScopeStack().
SgExprStatement * SageBuilder::buildFunctionCallStmt | ( | const SgName & | name, |
SgType * | return_type, | ||
SgExprListExp * | parameters = NULL , |
||
SgScopeStatement * | scope = NULL |
||
) |
Build a regular function call statement.
Definition at line 6520 of file sageBuilder.C.
References buildExprStatement(), buildFunctionCallExp(), and topScopeStack().
SgExprStatement * SageBuilder::buildFunctionCallStmt | ( | SgExpression * | function, |
SgExprListExp * | parameters = NULL |
||
) |
Build a function call statement using function expression and argument list only, like (*funcPtr)(args);.
Definition at line 6535 of file sageBuilder.C.
References buildExprStatement(), and buildFunctionCallExp().
SgLabelStatement * SageBuilder::buildLabelStatement | ( | const SgName & | name, |
SgStatement * | stmt = NULL , |
||
SgScopeStatement * | scope = NULL |
||
) |
Build a label statement, name is the label's name. Handling label symbol and scope internally.
Note that the scope of a label statement is special. It is SgFunctionDefinition, not the closest scope statement such as SgBasicBlock.
Definition at line 6725 of file sageBuilder.C.
References SageInterface::fixLabelStatement(), SageInterface::is_Fortran_language(), SgNode::set_parent(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
Referenced by SageInterface::addStepToLoopBody(), and SageInterface::changeBreakStatementsToGotos().
SgLabelStatement * SageBuilder::buildLabelStatement_nfi | ( | const SgName & | name, |
SgStatement * | stmt, | ||
SgScopeStatement * | scope | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6750 of file sageBuilder.C.
References SageInterface::fixLabelStatement(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgGotoStatement * SageBuilder::buildGotoStatement | ( | SgLabelStatement * | label = NULL | ) |
Build a goto statement.
Definition at line 7831 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
Referenced by buildGotoStatement(), SageInterface::changeBreakStatementsToGotos(), and SageInterface::changeContinuesToGotos().
SgGotoStatement * SageBuilder::buildGotoStatement_nfi | ( | SgLabelStatement * | label | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7862 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgGotoStatement * SageBuilder::buildGotoStatement | ( | SgLabelSymbol * | symbol | ) |
Build a goto statement from a label symbol, supporting both C/C++ and Fortran cases.
Definition at line 7840 of file sageBuilder.C.
References buildGotoStatement(), buildLabelRefExp(), SageInterface::is_Fortran_language(), and SgNode::set_parent().
SgGotoStatement * SageBuilder::buildGotoStatement_nfi | ( | SgExpression * | expr | ) |
Build a goto statement from a label expression, supporting only C/C++ and not Fortran cases.
Definition at line 7872 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgCaseOptionStmt * SageBuilder::buildCaseOptionStmt | ( | SgExpression * | key = NULL , |
SgStatement * | body = NULL |
||
) |
Build a case option statement.
Definition at line 7910 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgCaseOptionStmt * SageBuilder::buildCaseOptionStmt_nfi | ( | SgExpression * | key, |
SgStatement * | body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7920 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgDefaultOptionStmt * SageBuilder::buildDefaultOptionStmt | ( | SgStatement * | body = NULL | ) |
Build a default option statement.
Definition at line 7930 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgDefaultOptionStmt * SageBuilder::buildDefaultOptionStmt_nfi | ( | SgStatement * | body | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7948 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgExprStatement * SageBuilder::buildExprStatement | ( | SgExpression * | exp = NULL | ) |
Build a SgExprStatement, set File_Info automatically.
Definition at line 6377 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildDoWhileStmt(), buildFunctionCallStmt(), buildFunctionCallStmt(), buildIfStmt(), buildSwitchStatement(), buildWhileStmt(), SageInterface::convertForToWhile(), SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::moveForStatementIncrementIntoBody(), and SageInterface::replaceExpressionWithStatement().
SgExprStatement * SageBuilder::buildExprStatement_nfi | ( | SgExpression * | exp | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6387 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgStatementExpression * SageBuilder::buildStatementExpression | ( | SgStatement * | exp | ) |
Build a GNU statement expression.
Definition at line 6398 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgStatementExpression * SageBuilder::buildStatementExpression_nfi | ( | SgStatement * | exp | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6410 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgSwitchStatement * SageBuilder::buildSwitchStatement | ( | SgStatement * | item_selector = NULL , |
SgStatement * | body = NULL |
||
) |
Build a switch statement.
Definition at line 7975 of file sageBuilder.C.
References SageInterface::is_language_case_insensitive(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildSwitchStatement().
|
inline |
Build a variable declaration, handle symbol table transparently.
Definition at line 1245 of file sageBuilder.h.
References buildExprStatement(), and buildSwitchStatement().
SgSwitchStatement * SageBuilder::buildSwitchStatement_nfi | ( | SgStatement * | item_selector, |
SgStatement * | body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7992 of file sageBuilder.C.
References SageInterface::initializeSwitchStatement(), SgNode::set_parent(), SageInterface::setOneSourcePositionNull(), and symbol_table_case_insensitive_semantics.
SgIfStmt * SageBuilder::buildIfStmt | ( | SgStatement * | conditional, |
SgStatement * | true_body, | ||
SgStatement * | false_body | ||
) |
Build if statement.
Definition at line 6768 of file sageBuilder.C.
References SageInterface::is_Fortran_language(), SageInterface::is_language_case_insensitive(), SgIfStmt::set_has_end_statement(), SgNode::set_parent(), SgIfStmt::set_use_then_keyword(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildIfStmt().
|
inline |
Build a variable declaration, handle symbol table transparently.
Definition at line 1252 of file sageBuilder.h.
References buildExprStatement(), and buildIfStmt().
SgIfStmt * SageBuilder::buildIfStmt_nfi | ( | SgStatement * | conditional, |
SgStatement * | true_body, | ||
SgStatement * | false_body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6803 of file sageBuilder.C.
References SageInterface::initializeIfStmt().
SgFortranDo * SageBuilder::buildFortranDo | ( | SgExpression * | initialization, |
SgExpression * | bound, | ||
SgExpression * | increment, | ||
SgBasicBlock * | loopBody | ||
) |
Build a Fortran do construct.
Definition at line 6813 of file sageBuilder.C.
References buildBasicBlock(), buildNullExpression(), SageInterface::is_language_case_insensitive(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgFortranDo * SageBuilder::buildFortranDo_nfi | ( | SgExpression * | initialization, |
SgExpression * | bound, | ||
SgExpression * | increment, | ||
SgBasicBlock * | loopBody | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6837 of file sageBuilder.C.
References buildBasicBlock_nfi(), buildNullExpression_nfi(), SageInterface::is_language_case_insensitive(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgForInitStatement * SageBuilder::buildForInitStatement | ( | ) |
Build a for init statement.
Definition at line 6862 of file sageBuilder.C.
References SageInterface::setSourcePosition().
SgForInitStatement * SageBuilder::buildForInitStatement | ( | const SgStatementPtrList & | statements | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6889 of file sageBuilder.C.
References SgForInitStatement::get_init_stmt(), and SageInterface::setOneSourcePositionForTransformation().
SgForInitStatement * SageBuilder::buildForInitStatement_nfi | ( | SgStatementPtrList & | statements | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6902 of file sageBuilder.C.
References SgForInitStatement::get_init_stmt(), and SageInterface::setSourcePosition().
SgForInitStatement * SageBuilder::buildForInitStatement | ( | SgStatement * | statement | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 6875 of file sageBuilder.C.
References SageInterface::setSourcePosition().
SgForStatement * SageBuilder::buildForStatement | ( | SgStatement * | initialize_stmt, |
SgStatement * | test, | ||
SgExpression * | increment, | ||
SgStatement * | loop_body, | ||
SgStatement * | else_body = NULL |
||
) |
Build a for statement, assume none of the arguments is NULL.
Based on the contribution from Pradeep Srinivasa@ LANL.
Definition at line 6921 of file sageBuilder.C.
References SageInterface::fixVariableDeclaration(), SageInterface::fixVariableReferences(), SgForStatement::get_for_init_stmt(), SageInterface::is_language_case_insensitive(), SgForStatement::set_for_init_stmt(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by SageInterface::loopCollapsing(), and SageInterface::loopTiling().
SgForStatement * SageBuilder::buildForStatement_nfi | ( | SgStatement * | initialize_stmt, |
SgStatement * | test, | ||
SgExpression * | increment, | ||
SgStatement * | loop_body, | ||
SgStatement * | else_body = NULL |
||
) |
Based on the contribution from Pradeep Srinivasa@ LANL.
Definition at line 6993 of file sageBuilder.C.
References SgForStatement::get_for_init_stmt(), SageInterface::is_language_case_insensitive(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
Referenced by buildForStatement_nfi().
SgForStatement * SageBuilder::buildForStatement_nfi | ( | SgForInitStatement * | init_stmt, |
SgStatement * | test, | ||
SgExpression * | increment, | ||
SgStatement * | loop_body, | ||
SgStatement * | else_body = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7025 of file sageBuilder.C.
References buildForStatement_nfi().
void SageBuilder::buildForStatement_nfi | ( | SgForStatement * | result, |
SgForInitStatement * | init_stmt, | ||
SgStatement * | test, | ||
SgExpression * | increment, | ||
SgStatement * | loop_body, | ||
SgStatement * | else_body = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7039 of file sageBuilder.C.
References SgForStatement::get_for_init_stmt(), SgForStatement::get_loop_body(), SageInterface::is_language_case_insensitive(), SgForStatement::set_for_init_stmt(), SgForStatement::set_loop_body(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgRangeBasedForStatement * SageBuilder::buildRangeBasedForStatement_nfi | ( | SgVariableDeclaration * | initializer, |
SgVariableDeclaration * | range, | ||
SgVariableDeclaration * | begin_declaration, | ||
SgVariableDeclaration * | end_declaration, | ||
SgExpression * | not_equal_expression, | ||
SgExpression * | increment_expression, | ||
SgStatement * | body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7104 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
void SageBuilder::buildDoWhileStatement_nfi | ( | SgDoWhileStmt * | result, |
SgStatement * | body, | ||
SgStatement * | condition | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7140 of file sageBuilder.C.
References SgDoWhileStmt::get_body(), SgDoWhileStmt::get_condition(), SgNode::get_parent(), SgDoWhileStmt::set_body(), SgDoWhileStmt::set_condition(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgUpcForAllStatement * SageBuilder::buildUpcForAllStatement_nfi | ( | SgStatement * | initialize_stmt, |
SgStatement * | test, | ||
SgExpression * | increment, | ||
SgExpression * | affinity, | ||
SgStatement * | loop_body | ||
) |
Build a UPC forall statement.
Based on the contribution from Pradeep Srinivasa@ LANL.
Definition at line 7173 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgUpcForAllStatement * SageBuilder::buildUpcForAllStatement_nfi | ( | SgForInitStatement * | init_stmt, |
SgStatement * | test, | ||
SgExpression * | increment, | ||
SgExpression * | affinity, | ||
SgStatement * | loop_body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7195 of file sageBuilder.C.
References SageInterface::is_language_case_insensitive(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgUpcNotifyStatement * SageBuilder::buildUpcNotifyStatement_nfi | ( | SgExpression * | exp | ) |
Build a UPC notify statement.
Definition at line 7217 of file sageBuilder.C.
References SgNode::get_parent(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgUpcWaitStatement * SageBuilder::buildUpcWaitStatement_nfi | ( | SgExpression * | exp | ) |
Build a UPC wait statement.
Definition at line 7231 of file sageBuilder.C.
References SgNode::get_parent(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgUpcBarrierStatement * SageBuilder::buildUpcBarrierStatement_nfi | ( | SgExpression * | exp | ) |
Build a UPC barrier statement.
Definition at line 7245 of file sageBuilder.C.
References SgNode::get_parent(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgUpcFenceStatement * SageBuilder::buildUpcFenceStatement_nfi | ( | ) |
Build a UPC fence statement.
Definition at line 7259 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgWhileStmt * SageBuilder::buildWhileStmt | ( | SgStatement * | condition, |
SgStatement * | body, | ||
SgStatement * | else_body = NULL |
||
) |
Build while statement.
Definition at line 7271 of file sageBuilder.C.
References SageInterface::is_language_case_insensitive(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildWhileStmt(), and SageInterface::convertForToWhile().
|
inline |
Build a variable declaration, handle symbol table transparently.
Definition at line 1309 of file sageBuilder.h.
References buildExprStatement(), and buildWhileStmt().
SgWhileStmt * SageBuilder::buildWhileStmt_nfi | ( | SgStatement * | condition, |
SgStatement * | body, | ||
SgStatement * | else_body = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7298 of file sageBuilder.C.
References SageInterface::initializeWhileStatement(), SgNode::set_parent(), SageInterface::setOneSourcePositionNull(), and symbol_table_case_insensitive_semantics.
SgWithStatement * SageBuilder::buildWithStatement | ( | SgExpression * | expr, |
SgStatement * | body | ||
) |
Build a with statement.
Definition at line 7327 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgWithStatement * SageBuilder::buildWithStatement_nfi | ( | SgExpression * | expr, |
SgStatement * | body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7338 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgDoWhileStmt * SageBuilder::buildDoWhileStmt | ( | SgStatement * | body, |
SgStatement * | condition | ||
) |
Build do-while statement.
Definition at line 7349 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildDoWhileStmt().
|
inline |
Build a variable declaration, handle symbol table transparently.
Definition at line 1320 of file sageBuilder.h.
References buildDoWhileStmt(), and buildExprStatement().
SgDoWhileStmt * SageBuilder::buildDoWhileStmt_nfi | ( | SgStatement * | body, |
SgStatement * | condition | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7361 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgPragmaDeclaration * SageBuilder::buildPragmaDeclaration | ( | const std::string & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build pragma declaration, handle SgPragma and defining/nondefining pointers internally.
Definition at line 7692 of file sageBuilder.C.
References SgNode::get_parent(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
SgPragma * SageBuilder::buildPragma | ( | const std::string & | name | ) |
Build SgPragma.
Definition at line 7722 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
Referenced by SageInterface::replaceMacroCallsWithExpandedStrings().
SgEmptyDeclaration * SageBuilder::buildEmptyDeclaration | ( | ) |
Build an empty declaration (useful for adding precission to comments and CPP handling under token-based unparsing).
Definition at line 7731 of file sageBuilder.C.
References SgNode::get_parent(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
Referenced by SageInterface::buildFunctionPrototype(), SageInterface::insertHeader(), and SageInterface::insertHeader().
SgBasicBlock * SageBuilder::buildBasicBlock | ( | SgStatement * | stmt1 = NULL , |
SgStatement * | stmt2 = NULL , |
||
SgStatement * | stmt3 = NULL , |
||
SgStatement * | stmt4 = NULL , |
||
SgStatement * | stmt5 = NULL , |
||
SgStatement * | stmt6 = NULL , |
||
SgStatement * | stmt7 = NULL , |
||
SgStatement * | stmt8 = NULL , |
||
SgStatement * | stmt9 = NULL , |
||
SgStatement * | stmt10 = NULL |
||
) |
Build a SgBasicBlock, setting file info internally.
Definition at line 7755 of file sageBuilder.C.
References SageInterface::appendStatement(), SageInterface::is_language_case_insensitive(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by SageInterface::addStepToLoopBody(), buildFortranDo(), SageInterface::changeBreakStatementsToGotos(), SageInterface::convertForToWhile(), SageInterface::ensureBasicBlockAsBodyOfCaseOption(), SageInterface::ensureBasicBlockAsBodyOfCatch(), SageInterface::ensureBasicBlockAsBodyOfDefaultOption(), SageInterface::ensureBasicBlockAsBodyOfDoWhile(), SageInterface::ensureBasicBlockAsBodyOfFor(), SageInterface::ensureBasicBlockAsBodyOfOmpBodyStmt(), SageInterface::ensureBasicBlockAsBodyOfSwitch(), SageInterface::ensureBasicBlockAsBodyOfWhile(), SageInterface::ensureBasicBlockAsFalseBodyOfIf(), SageInterface::ensureBasicBlockAsTrueBodyOfIf(), SageInterface::insertStatement(), SageInterface::loopTiling(), SageInterface::replaceExpressionWithStatement(), SageInterface::replaceStatement(), and SageInterface::splitExpressionIntoBasicBlock().
SgBasicBlock * SageBuilder::buildBasicBlock_nfi | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7780 of file sageBuilder.C.
References SageInterface::is_language_case_insensitive(), and SageInterface::setOneSourcePositionNull().
Referenced by buildBasicBlock_nfi(), buildBasicBlock_nfi(), buildFortranDo_nfi(), and buildJovialForThenStatement_nfi().
SgBasicBlock * SageBuilder::buildBasicBlock_nfi | ( | const std::vector< SgStatement * > & | stmts | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7801 of file sageBuilder.C.
References SageInterface::appendStatementList(), and buildBasicBlock_nfi().
SgBasicBlock * SageBuilder::buildBasicBlock_nfi | ( | SgScopeStatement * | parent | ) |
Build a SgBasicBlock and set its parent. This function does NOT link the parent scope to the block.
Definition at line 7821 of file sageBuilder.C.
References buildBasicBlock_nfi(), and SgNode::set_parent().
SgExprStatement * SageBuilder::buildAssignStatement | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
Build an assignment statement from lefthand operand and right hand operand.
Definition at line 6670 of file sageBuilder.C.
References SgExpression::set_lvalue(), SgNode::set_parent(), SageInterface::setOneSourcePositionForTransformation(), and SageInterface::setSourcePositionAtRootAndAllChildren().
Referenced by SageInterface::loopCollapsing(), SageInterface::loopTiling(), SageInterface::normalizeForLoopInitDeclaration(), SageInterface::replaceExpressionWithStatement(), SageInterface::splitExpressionIntoBasicBlock(), and SageInterface::splitVariableDeclaration().
SgExprStatement * SageBuilder::buildAssignStatement_ast_translate | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
This version does not recursively reset the file info as a transformation.
Definition at line 6698 of file sageBuilder.C.
References SgExpression::set_lvalue(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgBreakStmt * SageBuilder::buildBreakStmt | ( | ) |
Build a break statement.
Definition at line 7384 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgBreakStmt * SageBuilder::buildBreakStmt_nfi | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7392 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgContinueStmt * SageBuilder::buildContinueStmt | ( | ) |
Build a continue statement.
Definition at line 7400 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgContinueStmt * SageBuilder::buildContinueStmt_nfi | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7408 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgFortranContinueStmt * SageBuilder::buildFortranContinueStmt | ( | ) |
Build a Fortran continue statement.
Definition at line 7416 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgFortranContinueStmt * SageBuilder::buildFortranContinueStmt_nfi | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7424 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgPassStatement * SageBuilder::buildPassStatement | ( | ) |
Build a pass statement.
Definition at line 7432 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgPassStatement * SageBuilder::buildPassStatement_nfi | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7440 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgAssertStmt * SageBuilder::buildAssertStmt | ( | SgExpression * | test | ) |
Build a Assert statement.
Definition at line 7464 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgAssertStmt * SageBuilder::buildAssertStmt | ( | SgExpression * | test, |
SgExpression * | exceptionArgument | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7491 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgAssertStmt * SageBuilder::buildAssertStmt_nfi | ( | SgExpression * | test | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7504 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgYieldExpression * SageBuilder::buildYieldExpression | ( | SgExpression * | value | ) |
Build a yield statement.
Definition at line 7513 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgYieldExpression * SageBuilder::buildYieldExpression_nfi | ( | SgExpression * | value | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7522 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgKeyDatumPair * SageBuilder::buildKeyDatumPair | ( | SgExpression * | key, |
SgExpression * | datum | ||
) |
Build a key-datum pair.
Definition at line 7531 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgKeyDatumPair * SageBuilder::buildKeyDatumPair_nfi | ( | SgExpression * | key, |
SgExpression * | datum | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7541 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgDictionaryExp * SageBuilder::buildDictionaryExp | ( | std::vector< SgKeyDatumPair * > | pairs | ) |
Build a list of key-datum pairs.
Definition at line 7551 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgDictionaryExp * SageBuilder::buildDictionaryExp_nfi | ( | std::vector< SgKeyDatumPair * > | pairs | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7561 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgActualArgumentExpression * SageBuilder::buildActualArgumentExpression | ( | SgName | arg_name, |
SgExpression * | arg | ||
) |
Build an Actual Argument Expression.
Definition at line 7674 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgActualArgumentExpression * SageBuilder::buildActualArgumentExpression_nfi | ( | SgName | arg_name, |
SgExpression * | arg | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7683 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgDeleteExp * SageBuilder::buildDeleteExp | ( | SgExpression * | target, |
bool | is_array = false , |
||
bool | need_global_specifier = false , |
||
SgFunctionDeclaration * | deleteOperatorDeclaration = NULL |
||
) |
Build a delete statement.
Definition at line 7448 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgDeleteExp * SageBuilder::buildDeleteExp_nfi | ( | SgExpression * | target, |
bool | is_array = false , |
||
bool | need_global_specifier = false , |
||
SgFunctionDeclaration * | deleteOperatorDeclaration = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 7456 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgDeclarationScope * SageBuilder::buildDeclarationScope | ( | ) |
Build a scope statement. Used to build SgNonrealDecl and SgNonrealType.
Definition at line 9849 of file sageBuilder.C.
References SgLocatedNode::get_endOfConstruct(), SgLocatedNode::get_startOfConstruct(), Sg_File_Info::setCompilerGenerated(), and SageInterface::setSourcePosition().
SgClassDefinition * SageBuilder::buildClassDefinition | ( | SgClassDeclaration * | d = NULL , |
bool | buildTemplateInstantiation = false |
||
) |
Build a class definition scope statement.
Definition at line 9859 of file sageBuilder.C.
References SageInterface::is_language_case_insensitive(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildClassDeclaration_nfi(), buildDefiningClassDeclaration(), and buildStructDeclaration().
SgClassDefinition * SageBuilder::buildClassDefinition_nfi | ( | SgClassDeclaration * | d = NULL , |
bool | buildTemplateInstantiation = false |
||
) |
Build a class definition scope statement.
Definition at line 9892 of file sageBuilder.C.
References SageInterface::is_language_case_insensitive(), and SageInterface::setOneSourcePositionNull().
SgTemplateClassDefinition * SageBuilder::buildTemplateClassDefinition | ( | SgTemplateClassDeclaration * | d = NULL | ) |
Build a template class definition statement.
Definition at line 12659 of file sageBuilder.C.
References SageInterface::is_language_case_insensitive(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildTemplateClassDeclaration_nfi().
SgClassDeclaration * SageBuilder::buildNondefiningClassDeclaration_nfi | ( | const SgName & | name, |
SgClassDeclaration::class_types | kind, | ||
SgScopeStatement * | scope, | ||
bool | buildTemplateInstantiation, | ||
SgTemplateArgumentPtrList * | templateArgumentsList | ||
) |
Build a structure first nondefining declaration, without file info.
Definition at line 9921 of file sageBuilder.C.
References appendTemplateArgumentsToName(), SgClassType::class_name(), SgScopeStatement::class_name(), SgClassDeclaration::class_name(), SgClassSymbol::class_name(), SgClassType::createType(), display(), SgDeclarationStatement::get_definingDeclaration(), SgLocatedNode::get_file_info(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgClassDeclaration::get_scope(), SgClassDeclaration::get_symbol_from_symbol_table(), SgTemplateInstantiationDecl::get_templateArguments(), SgTemplateInstantiationDecl::get_templateName(), SageInterface::hasTemplateSyntax(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgClassDeclaration::set_scope(), SgTemplateInstantiationDecl::set_templateName(), SgDeclarationStatement::setForward(), SageInterface::setOneSourcePositionNull(), SageInterface::setSourcePosition(), setTemplateArgumentParents(), setTemplateArgumentsInDeclaration(), topScopeStack(), unparseTemplateArgumentToString(), SgNode::unparseToString(), and SgClassDeclaration::variantT().
SgTemplateClassDeclaration * SageBuilder::buildNondefiningTemplateClassDeclaration_nfi | ( | const SgName & | name, |
SgClassDeclaration::class_types | kind, | ||
SgScopeStatement * | scope, | ||
SgTemplateParameterPtrList * | templateParameterList, | ||
SgTemplateArgumentPtrList * | templateSpecializationArgumentList | ||
) |
DQ (11/29/2011): Adding template declaration support to the AST.
Definition at line 12693 of file sageBuilder.C.
References appendTemplateArgumentsToName(), SgClassType::class_name(), SgScopeStatement::class_name(), SgTemplateClassDeclaration::class_name(), SgClassType::createType(), SgDeclarationStatement::get_definingDeclaration(), SgLocatedNode::get_endOfConstruct(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgClassDeclaration::get_scope(), SgLocatedNode::get_startOfConstruct(), SgClassDeclaration::get_symbol_from_symbol_table(), SgClassSymbol::get_type(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgClassDeclaration::set_scope(), Sg_File_Info::setCompilerGenerated(), SgDeclarationStatement::setForward(), SageInterface::setOneSourcePositionForTransformation(), SageInterface::setSourcePosition(), setTemplateParametersInDeclaration(), setTemplateSpecializationArgumentsInDeclaration(), testTemplateArgumentParents(), and topScopeStack().
Referenced by buildNondefiningTemplateClassDeclaration().
SgTemplateClassDeclaration * SageBuilder::buildNondefiningTemplateClassDeclaration | ( | const SgName & | name, |
SgClassDeclaration::class_types | kind, | ||
SgScopeStatement * | scope, | ||
SgTemplateParameterPtrList * | templateParameterList, | ||
SgTemplateArgumentPtrList * | templateSpecializationArgumentList | ||
) |
buildNondefiningTemplateClassDeclaration()
Definition at line 12684 of file sageBuilder.C.
References buildNondefiningTemplateClassDeclaration_nfi(), and SageInterface::setSourcePositionForTransformation().
SgClassDeclaration * SageBuilder::buildNondefiningClassDeclaration | ( | SgName | name, |
SgScopeStatement * | scope | ||
) |
DQ (11/7/2009): Added functions to build C++ class.
Definition at line 11273 of file sageBuilder.C.
References SgClassType::class_name(), SgScopeStatement::class_name(), SgClassDeclaration::class_name(), SgClassType::createType(), SgClassDeclaration::e_class, SgDeclarationStatement::get_definingDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgClassDeclaration::get_scope(), SageInterface::hasTemplateSyntax(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgClassDeclaration::set_scope(), SgDeclarationStatement::setForward(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildDefiningClassDeclaration().
SgClassDeclaration * SageBuilder::buildDefiningClassDeclaration | ( | SgName | name, |
SgScopeStatement * | scope | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 11400 of file sageBuilder.C.
References buildClassDefinition(), buildNondefiningClassDeclaration(), SgScopeStatement::class_name(), SgClassDeclaration::e_class, SgDeclarationStatement::get_definingDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgClassDeclaration::get_scope(), SageInterface::hasTemplateSyntax(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgClassDeclaration::set_scope(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildClassDeclaration().
SgClassDeclaration * SageBuilder::buildClassDeclaration | ( | SgName | name, |
SgScopeStatement * | scope | ||
) |
Build C++ class (builds both the non-defining and defining declarations; in that order).
Definition at line 11471 of file sageBuilder.C.
References buildDefiningClassDeclaration().
SgEnumDeclaration * SageBuilder::buildNondefiningEnumDeclaration_nfi | ( | const SgName & | name, |
SgScopeStatement * | scope | ||
) |
Build an enum first nondefining declaration, without file info.
Definition at line 13479 of file sageBuilder.C.
References SgDeclarationStatement::get_definingDeclaration(), SgEnumDeclaration::get_type(), SgEnumSymbol::get_type(), SageInterface::hasTemplateSyntax(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgEnumDeclaration::set_scope(), SgDeclarationStatement::setForward(), and SageInterface::setOneSourcePositionNull().
Referenced by buildEnumDeclaration_nfi().
SgClassDeclaration * SageBuilder::buildStructDeclaration | ( | const SgName & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build a structure, It is also a declaration statement in SAGE III.
Definition at line 10444 of file sageBuilder.C.
References buildClassDeclaration_nfi(), buildClassDefinition(), SgClassDeclaration::e_struct, SageInterface::fixStructDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgDeclarationStatement::setForward(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
Referenced by buildStructDeclaration(), and buildStructDeclaration().
SgClassDeclaration * SageBuilder::buildStructDeclaration | ( | const std::string & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 12631 of file sageBuilder.C.
References buildStructDeclaration().
SgClassDeclaration * SageBuilder::buildStructDeclaration | ( | const char * | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 12637 of file sageBuilder.C.
References buildStructDeclaration().
SgStmtDeclarationStatement * SageBuilder::buildStmtDeclarationStatement | ( | SgStatement * | stmt | ) |
Build a StmtDeclarationStmt.
Definition at line 10384 of file sageBuilder.C.
References SgDeclarationStatement::set_definingDeclaration(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgStmtDeclarationStatement * SageBuilder::buildStmtDeclarationStatement_nfi | ( | SgStatement * | stmt | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 10372 of file sageBuilder.C.
References SgDeclarationStatement::set_definingDeclaration(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgNamespaceDeclarationStatement * SageBuilder::buildNamespaceDeclaration | ( | const SgName & | name, |
SgScopeStatement * | scope = NULL |
||
) |
tps (09/02/2009) : Added support for building namespaces
Definition at line 10906 of file sageBuilder.C.
References buildNamespaceDeclaration_nfi(), SgDeclarationStatement::get_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
SgNamespaceDeclarationStatement * SageBuilder::buildNamespaceDeclaration_nfi | ( | const SgName & | name, |
bool | unnamednamespace, | ||
SgScopeStatement * | scope | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 10918 of file sageBuilder.C.
References buildNamespaceDefinition(), SgScopeStatement::class_name(), SageInterface::fixNamespaceDeclaration(), SgNamespaceSymbol::get_declaration(), SgDeclarationStatement::get_definingDeclaration(), SgNamespaceDeclarationStatement::get_definition(), SgLocatedNode::get_file_info(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNamespaceDeclarationStatement::get_name(), SageInterface::get_name(), SgNode::get_parent(), SgScopeStatement::insert_symbol(), Sg_File_Info::isOutputInCodeGeneration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgDeclarationStatement::setForward(), SageInterface::setOneSourcePositionNull(), and topScopeStack().
Referenced by buildNamespaceDeclaration().
SgNamespaceDefinitionStatement * SageBuilder::buildNamespaceDefinition | ( | SgNamespaceDeclarationStatement * | d = NULL | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 9829 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
Referenced by buildNamespaceDeclaration_nfi().
SgNamespaceAliasDeclarationStatement * SageBuilder::buildNamespaceAliasDeclarationStatement | ( | const SgName & | name, |
SgNamespaceDeclarationStatement * | namespaceDeclaration | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 10896 of file sageBuilder.C.
References SgNode::set_parent(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
SgNaryComparisonOp * SageBuilder::buildNaryComparisonOp | ( | SgExpression * | lhs | ) |
driscoll6 (7/20/11) : Support n-ary operators for python
Definition at line 11207 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgNaryComparisonOp * SageBuilder::buildNaryComparisonOp_nfi | ( | SgExpression * | lhs | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 11218 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgNaryBooleanOp * SageBuilder::buildNaryBooleanOp | ( | SgExpression * | lhs | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 11229 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgNaryBooleanOp * SageBuilder::buildNaryBooleanOp_nfi | ( | SgExpression * | lhs | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 11240 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgStringConversion * SageBuilder::buildStringConversion | ( | SgExpression * | exp | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 11251 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgStringConversion * SageBuilder::buildStringConversion_nfi | ( | SgExpression * | exp | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 11262 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgClassDeclaration * SageBuilder::buildClassDeclaration_nfi | ( | const SgName & | name, |
SgClassDeclaration::class_types | kind, | ||
SgScopeStatement * | scope, | ||
SgClassDeclaration * | nonDefiningDecl, | ||
bool | buildTemplateInstantiation, | ||
SgTemplateArgumentPtrList * | templateArgumentsList | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 11485 of file sageBuilder.C.
References appendTemplateArgumentsToName(), buildClassDefinition(), SgNode::class_name(), SgClassType::class_name(), SgScopeStatement::class_name(), SgDeclarationStatement::class_name(), SgClassDeclaration::class_name(), SgClassSymbol::class_name(), SgJavaParameterType::createType(), SgClassType::createType(), display(), SgClassDeclaration::e_java_parameter, e_sourcePositionTransformation, SageInterface::fixStructDeclaration(), SgLocatedNode::get_file_info(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgClassDeclaration::get_scope(), SgClassDeclaration::get_symbol_from_symbol_table(), SgScopeStatement::get_symbol_table(), SgTemplateInstantiationDecl::get_templateArguments(), SgTemplateInstantiationDecl::get_templateDeclaration(), SageInterface::hasTemplateSyntax(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::set_definingDeclaration(), SgTemplateInstantiationDecl::set_templateDeclaration(), SgTemplateInstantiationDecl::set_templateName(), SageInterface::setOneSourcePositionForTransformation(), setTemplateArgumentParents(), setTemplateArgumentsInDeclaration(), SourcePositionClassificationMode, testTemplateArgumentParents(), topScopeStack(), and SgNode::unparseToString().
Referenced by buildStructDeclaration().
SgTemplateClassDeclaration * SageBuilder::buildTemplateClassDeclaration_nfi | ( | const SgName & | name, |
SgClassDeclaration::class_types | kind, | ||
SgScopeStatement * | scope, | ||
SgTemplateClassDeclaration * | nonDefiningDecl, | ||
SgTemplateParameterPtrList * | templateParameterList, | ||
SgTemplateArgumentPtrList * | templateSpecializationArgumentList | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 13059 of file sageBuilder.C.
References appendTemplateArgumentsToName(), buildTemplateClassDefinition(), SgClassType::class_name(), SgScopeStatement::class_name(), SgTemplateClassDeclaration::class_name(), SgClassType::createType(), SgDeclarationStatement::get_definingDeclaration(), SgLocatedNode::get_endOfConstruct(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgClassDeclaration::get_scope(), SgLocatedNode::get_startOfConstruct(), SgClassDeclaration::get_symbol_from_symbol_table(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgClassDeclaration::set_scope(), Sg_File_Info::setCompilerGenerated(), SgDeclarationStatement::setForward(), SageInterface::setOneSourcePositionForTransformation(), SageInterface::setSourcePosition(), setTemplateParametersInDeclaration(), setTemplateSpecializationArgumentsInDeclaration(), testTemplateArgumentParents(), and topScopeStack().
Referenced by buildTemplateClassDeclaration().
SgTemplateClassDeclaration * SageBuilder::buildTemplateClassDeclaration | ( | const SgName & | name, |
SgClassDeclaration::class_types | kind, | ||
SgScopeStatement * | scope, | ||
SgTemplateClassDeclaration * | nonDefiningDecl, | ||
SgTemplateParameterPtrList * | templateParameterList, | ||
SgTemplateArgumentPtrList * | templateSpecializationArgumentList | ||
) |
Build tempplate class declaration.
Definition at line 13050 of file sageBuilder.C.
References buildTemplateClassDeclaration_nfi(), and SageInterface::setSourcePositionForTransformation().
SgJovialDefineDeclaration * SageBuilder::buildJovialDefineDeclaration_nfi | ( | const SgName & | name, |
const std::string & | params, | ||
const std::string & | def_string, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build a Jovial define directive declaration statement.
Definition at line 10396 of file sageBuilder.C.
References SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SageInterface::setSourcePosition(), and topScopeStack().
SgJovialForThenStatement * SageBuilder::buildJovialForThenStatement_nfi | ( | ) |
Build a Jovial loop statement.
Two variants are FOR and WHILE. A loop body will be created and its parent set to the loop statement.
Definition at line 10424 of file sageBuilder.C.
References buildBasicBlock_nfi(), SageInterface::is_language_case_insensitive(), SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgDerivedTypeStatement * SageBuilder::buildDerivedTypeStatement | ( | const SgName & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build an SgDerivedTypeStatement Fortran derived type declaration with a class declaration and definition (creating both the defining and nondefining declarations as required).
Build a Fortran derived type declaration.
Definition at line 10499 of file sageBuilder.C.
References SgClassDeclaration::e_struct, SgDeclarationStatement::get_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
SgModuleStatement * SageBuilder::buildModuleStatement | ( | const SgName & | name, |
SgScopeStatement * | scope | ||
) |
Build a Fortran module declaration.
Definition at line 10512 of file sageBuilder.C.
References SgClassDeclaration::e_fortran_module, SgDeclarationStatement::get_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
SgJovialTableStatement * SageBuilder::buildJovialTableStatement | ( | const SgName & | name, |
SgClassDeclaration::class_types | kind, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build a Jovial table declaration statement.
Build a Jovial table declaration statement. A Jovial table is essentially a C struct with an optional struct size.
Definition at line 10525 of file sageBuilder.C.
References SgDeclarationStatement::get_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
SgJovialTableType * SageBuilder::buildJovialTableType | ( | const SgName & | name, |
SgType * | base_type, | ||
SgExprListExp * | dim_info, | ||
SgScopeStatement * | scope = NULL |
||
) |
Build a Jovial table type with required class definition and defining and nondefining declarations.
Definition at line 10539 of file sageBuilder.C.
References SgClassDeclaration::e_jovial_table, SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgEnumDeclaration * SageBuilder::buildEnumDeclaration | ( | const SgName & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build an enum, It is also a declaration statement in SAGE III.
Definition at line 13459 of file sageBuilder.C.
References buildEnumDeclaration_nfi(), SgDeclarationStatement::get_definingDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SageInterface::setOneSourcePositionForTransformation(), and topScopeStack().
SgEnumDeclaration * SageBuilder::buildEnumDeclaration_nfi | ( | const SgName & | name, |
SgScopeStatement * | scope = NULL |
||
) |
Build an enum, It is also a declaration statement in SAGE III.
Definition at line 13572 of file sageBuilder.C.
References buildNondefiningEnumDeclaration_nfi(), SgScopeStatement::class_name(), SgDeclarationStatement::get_definingDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgNode::get_parent(), SgEnumDeclaration::get_type(), SgEnumSymbol::get_type(), SgScopeStatement::insert_symbol(), SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), SgNode::set_parent(), SgEnumDeclaration::set_scope(), and SageInterface::setOneSourcePositionNull().
Referenced by buildEnumDeclaration().
SgReturnStmt * SageBuilder::buildReturnStmt | ( | SgExpression * | expression = NULL | ) |
Build a return statement.
Definition at line 7883 of file sageBuilder.C.
References buildNullExpression(), SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgReturnStmt * SageBuilder::buildReturnStmt_nfi | ( | SgExpression * | expression | ) |
Build a return statement.
Definition at line 7901 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgNullStatement * SageBuilder::buildNullStatement | ( | ) |
Build a NULL statement.
Definition at line 8014 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
SgNullStatement * SageBuilder::buildNullStatement_nfi | ( | ) |
Build a NULL statement.
Definition at line 8024 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgCatchOptionStmt * SageBuilder::buildCatchOptionStmt | ( | SgVariableDeclaration * | condition = NULL , |
SgStatement * | body = NULL |
||
) |
Build a catch statement.
Definition at line 8250 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgAsyncStmt * SageBuilder::buildAsyncStmt | ( | SgBasicBlock * | body | ) |
MH (6/10/2014): Added async support.
Definition at line 8068 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgFinishStmt * SageBuilder::buildFinishStmt | ( | SgBasicBlock * | body | ) |
MH (6/11/2014): Added finish support.
Definition at line 8080 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgAtStmt * SageBuilder::buildAtStmt | ( | SgExpression * | expression, |
SgBasicBlock * | body | ||
) |
MH (6/11/2014): Added at support.
Definition at line 8092 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setSourcePosition().
SgAtomicStmt * SageBuilder::buildAtomicStmt | ( | SgBasicBlock * | body | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 8105 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgWhenStmt * SageBuilder::buildWhenStmt | ( | SgExpression * | expression, |
SgBasicBlock * | body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 8117 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setSourcePosition().
SgAtExp * SageBuilder::buildAtExp | ( | SgExpression * | expression, |
SgBasicBlock * | body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 8130 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setSourcePosition().
SgFinishExp * SageBuilder::buildFinishExp | ( | SgExpression * | expression, |
SgBasicBlock * | body | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 8143 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setSourcePosition().
SgHereExp * SageBuilder::buildHereExpression | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 8155 of file sageBuilder.C.
SgDotDotExp * SageBuilder::buildDotDotExp | ( | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 8161 of file sageBuilder.C.
SgTryStmt * SageBuilder::buildTryStmt | ( | SgStatement * | body, |
SgCatchOptionStmt * | catch0 = NULL , |
||
SgCatchOptionStmt * | catch1 = NULL , |
||
SgCatchOptionStmt * | catch2 = NULL , |
||
SgCatchOptionStmt * | catch3 = NULL , |
||
SgCatchOptionStmt * | catch4 = NULL |
||
) |
Build a try statement.
Definition at line 8169 of file sageBuilder.C.
References SgTryStmt::get_catch_statement_seq_root(), SgLocatedNode::get_endOfConstruct(), SgLocatedNode::get_startOfConstruct(), SgNode::set_parent(), and SageInterface::setSourcePosition().
SgTryStmt * SageBuilder::buildTryStmt | ( | SgBasicBlock * | try_body, |
SgBasicBlock * | finally_body = NULL |
||
) |
Build a try statement.
Build a try statement (used for Java)
Build a try statement.
Definition at line 8208 of file sageBuilder.C.
References SageInterface::setSourcePosition().
SgCatchStatementSeq * SageBuilder::buildCatchStatementSeq | ( | SgCatchOptionStmt * | catch_option_stmt = NULL | ) |
Build an initial sequence of Catch blocks containing 0 or 1 element.
Definition at line 8234 of file sageBuilder.C.
References SageInterface::setSourcePosition().
SgJavaSynchronizedStatement * SageBuilder::buildJavaSynchronizedStatement | ( | SgExpression * | expression, |
SgBasicBlock * | body | ||
) |
Build a Java Synchronized statement.
Definition at line 8258 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setSourcePosition().
SgJavaThrowStatement * SageBuilder::buildJavaThrowStatement | ( | SgThrowOp * | op | ) |
Build a Java Throw statement.
Definition at line 8271 of file sageBuilder.C.
References SgNode::set_parent().
SgJavaForEachStatement * SageBuilder::buildJavaForEachStatement | ( | SgVariableDeclaration * | variable = NULL , |
SgExpression * | collection = NULL , |
||
SgStatement * | body = NULL |
||
) |
Build a Java Foreach statement.
Definition at line 8284 of file sageBuilder.C.
SgJavaLabelStatement * SageBuilder::buildJavaLabelStatement | ( | const SgName & | name, |
SgStatement * | stmt = NULL |
||
) |
Build a Java Label statement.
Definition at line 8295 of file sageBuilder.C.
References SageInterface::get_name(), and SageInterface::setOneSourcePositionForTransformation().
SgExecStatement * SageBuilder::buildExecStatement | ( | SgExpression * | executable, |
SgExpression * | globals = NULL , |
||
SgExpression * | locals = NULL |
||
) |
Build an exec statement.
Build an exec stmt.
Definition at line 8034 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgExecStatement * SageBuilder::buildExecStatement_nfi | ( | SgExpression * | executable, |
SgExpression * | globals = NULL , |
||
SgExpression * | locals = NULL |
||
) |
Build an exec stmt.
Definition at line 8051 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgPythonPrintStmt * SageBuilder::buildPythonPrintStmt | ( | SgExpression * | dest = NULL , |
SgExprListExp * | values = NULL |
||
) |
Build a python print statement.
Definition at line 8316 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
SgPythonPrintStmt * SageBuilder::buildPythonPrintStmt_nfi | ( | SgExpression * | dest = NULL , |
SgExprListExp * | values = NULL |
||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 8325 of file sageBuilder.C.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionNull().
SgPythonGlobalStmt * SageBuilder::buildPythonGlobalStmt | ( | SgInitializedNamePtrList & | names | ) |
Build a python global statement.
Definition at line 8334 of file sageBuilder.C.
References SgPythonGlobalStmt::append_name(), and SageInterface::setOneSourcePositionForTransformation().
SgPythonGlobalStmt * SageBuilder::buildPythonGlobalStmt_nfi | ( | SgInitializedNamePtrList & | names | ) |
Build a variable declaration, handle symbol table transparently.
Definition at line 8344 of file sageBuilder.C.
References SgPythonGlobalStmt::append_name(), and SageInterface::setOneSourcePositionNull().
SgAsmStmt * SageBuilder::buildAsmStatement | ( | std::string | s | ) |
Build a NULL statement.
Build an asm statement.
Definition at line 8355 of file sageBuilder.C.
References SageInterface::setOneSourcePositionForTransformation().
Referenced by buildMultibyteNopStatement().
SgAsmStmt * SageBuilder::buildAsmStatement_nfi | ( | std::string | s | ) |
Build an asm statement.
Definition at line 8367 of file sageBuilder.C.
References SageInterface::setOneSourcePositionNull().
SgAsmStmt * SageBuilder::buildMultibyteNopStatement | ( | int | n | ) |
DQ (4/30/2010): Added support for building nop statement using asm statement Building nop statement using asm statement.
Definition at line 8378 of file sageBuilder.C.
References buildAsmStatement().
SgBaseClass * SageBuilder::buildBaseClass | ( | SgClassDeclaration * | classDeclaration, |
SgClassDefinition * | classDefinition, | ||
bool | isVirtual, | ||
bool | isDirect | ||
) |
DQ (5/6/2013): Added build functions to support SgBaseClass construction.
Definition at line 13693 of file sageBuilder.C.
References SgClassDefinition::get_declaration(), and SgNode::set_parent().
SgNonrealBaseClass * SageBuilder::buildNonrealBaseClass | ( | SgNonrealDecl * | classDeclaration, |
SgClassDefinition * | classDefinition, | ||
bool | isVirtual, | ||
bool | isDirect | ||
) |
Build a variable declaration, handle symbol table transparently.
Definition at line 13736 of file sageBuilder.C.
References SgNode::set_parent().
SgStaticAssertionDeclaration * SageBuilder::buildStaticAssertionDeclaration | ( | SgExpression * | condition, |
const SgName & | string_literal | ||
) |
DQ (7/25/2014): Adding support for C11 static assertions.
Definition at line 8418 of file sageBuilder.C.
References SgDeclarationStatement::get_firstNondefiningDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
SgMicrosoftAttributeDeclaration * SageBuilder::buildMicrosoftAttributeDeclaration | ( | const SgName & | name | ) |
DQ (8/17/2014): Adding support for Microsoft MSVC specific attributes.
Definition at line 8439 of file sageBuilder.C.
References SgDeclarationStatement::get_firstNondefiningDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
SgStatement * SageBuilder::buildStatementFromString | ( | const std::string & | stmt_str, |
SgScopeStatement * | scope | ||
) |
Liao (9/18/2015): experimental support of building a statement from a string.
Definition at line 18939 of file sageBuilder.C.
References AstFromString::afs_match_statement(), AstFromString::c_char, AstFromString::c_parsed_node, AstFromString::c_sgnode, and SgScopeStatement::class_name().
SgUsingDirectiveStatement * SageBuilder::buildUsingDirectiveStatement | ( | SgNamespaceDeclarationStatement * | ns_decl | ) |
Build a using directive statement.
Definition at line 18964 of file sageBuilder.C.
References SgDeclarationStatement::set_definingDeclaration(), SgDeclarationStatement::set_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
SgFile * SageBuilder::buildFile | ( | const std::string & | inputFileName, |
const std::string & | outputFileName, | ||
SgProject * | project = NULL , |
||
bool | clear_globalScopeAcrossFiles = false |
||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Definition at line 14173 of file sageBuilder.C.
References SgFile::class_name(), SgDeclarationStatement::class_name(), SgNode::clearGlobalMangledNameMap(), SageInterface::collectModifiedLocatedNodes(), fixupSharingSourcePosition(), fixupSourcePositionFileSpecification(), CommandlineProcessing::generateSourceFilenames(), SgGlobal::get_declarations(), SgNode::get_globalMangledNameMap(), SgNode::get_isModified(), SgProject::get_originalCommandLineArgumentList(), SgFile::get_startOfConstruct(), SgScopeStatement::get_symbol_table(), SgFile::getFileName(), SageInterface::outputFileIds(), CommandlineProcessing::removeAllFileNamesExcept(), SageInterface::reportModifiedLocatedNodes(), SageInterface::reportModifiedStatements(), SageInterface::resetModifiedLocatedNodes(), SgProject::set_file(), SgNode::set_isModified(), SgProject::set_originalCommandLineArgumentList(), SgNode::set_parent(), and SgSymbolTable::size().
Referenced by buildSourceFile(), and buildSourceFile().
SgSourceFile * SageBuilder::buildSourceFile | ( | const std::string & | outputFileName, |
SgProject * | project = NULL , |
||
bool | clear_globalScopeAcrossFiles = false |
||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The file will be build with an empty global scope to support declarations being added.
Definition at line 15017 of file sageBuilder.C.
References buildFile().
SgSourceFile * SageBuilder::buildSourceFile | ( | const std::string & | inputFileName, |
const std::string & | outputFileName, | ||
SgProject * | project, | ||
bool | clear_globalScopeAcrossFiles = false |
||
) |
Build a SgSourceFile node and attach it to SgProject.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Definition at line 15067 of file sageBuilder.C.
References buildFile(), SgFile::class_name(), SgSourceFile::class_name(), SageInterface::collectModifiedLocatedNodes(), fixupSourcePositionFileSpecification(), SgFile::get_file_info(), Sg_File_Info::get_filename(), SgNode::get_isModified(), Sg_File_Info::get_nametofileid_map(), SgFile::getFileName(), SgFile::secondaryPassOverSourceFile(), and SgNode::set_isModified().
void SageBuilder::fixupSourcePositionFileSpecification | ( | SgNode * | subtreeRoot, |
const std::string & | newFileName | ||
) |
Change the source file associated with the source position information in the AST.
Definition at line 13799 of file sageBuilder.C.
References SgNode::class_name(), SgLocatedNode::class_name(), SgLocatedNode::get_endOfConstruct(), SgNode::get_endOfConstruct(), Sg_File_Info::get_nametofileid_map(), SgFile::get_startOfConstruct(), SgLocatedNode::get_startOfConstruct(), Sg_File_Info::isShared(), and AstSimpleProcessing::visit().
Referenced by buildFile(), and buildSourceFile().
void SageBuilder::fixupSharingSourcePosition | ( | SgNode * | subtreeRoot, |
int | new_file_id | ||
) |
Sharing IR nodes requires that the file id be added to the fileIDsToUnparse held in the Sg_File_Info object.
Definition at line 14051 of file sageBuilder.C.
References SgNode::class_name(), SgStatement::class_name(), SgLocatedNode::get_endOfConstruct(), Sg_File_Info::get_line(), SgLocatedNode::get_startOfConstruct(), and Sg_File_Info::setShared().
Referenced by buildFile().
PreprocessingInfo * SageBuilder::buildComment | ( | SgLocatedNode * | target, |
const std::string & | content, | ||
PreprocessingInfo::RelativePositionType | position = PreprocessingInfo::before , |
||
PreprocessingInfo::DirectiveType | dtype = PreprocessingInfo::CpreprocessorUnknownDeclaration |
||
) |
Build and attach a comment, comment style is inferred from the language type of the target node if not provided. It is indeed a wrapper of SageInterface::attachComment().
Definition at line 15373 of file sageBuilder.C.
References SageInterface::attachComment().
PreprocessingInfo * SageBuilder::buildCpreprocessorDefineDeclaration | ( | SgLocatedNode * | target, |
const std::string & | content, | ||
PreprocessingInfo::RelativePositionType | position = PreprocessingInfo::before |
||
) |
Build and attach #define XX directives, pass "#define xxx xxx" as content.
#define xxx yyy
Definition at line 15397 of file sageBuilder.C.
PreprocessingInfo * SageBuilder::buildHeader | ( | const std::string & | header_filename, |
PreprocessingInfo::RelativePositionType | position = PreprocessingInfo::before , |
||
bool | isSystemHeader = false |
||
) |
Build a dangling #include "x.h" header, insertHeader() is needed to actually insert it.
Definition at line 15379 of file sageBuilder.C.
References Sg_File_Info::setTransformation().
AbstractHandle::abstract_handle * SageBuilder::buildAbstractHandle | ( | SgNode * | n | ) |
Build an abstract handle from a SgNode.
Definition at line 8290 of file sageInterface.C.
References AbstractHandle::buildAbstractHandle().
SgEquivalenceStatement * SageBuilder::buildEquivalenceStatement | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Definition at line 15443 of file sageBuilder.C.
References buildExprListExp(), SgDeclarationStatement::set_firstNondefiningDeclaration(), and SageInterface::setOneSourcePositionForTransformation().
void SageBuilder::fixupCopyOfAstFromSeparateFileInNewTargetAst | ( | SgStatement * | insertionPoint, |
bool | insertionPointIsScope, | ||
SgStatement * | toInsert, | ||
SgStatement * | original_before_copy | ||
) |
Fixup any AST moved from one file two another (references to symbols, types, etc.).
Definition at line 18812 of file sageBuilder.C.
References RoseAst::begin(), RoseAst::end(), fixupCopyOfNodeFromSeparateFileInNewTargetAst(), SageInterface::getEnclosingFileNode(), and SageInterface::isStructurallyEquivalentAST().
void SageBuilder::fixupCopyOfNodeFromSeparateFileInNewTargetAst | ( | SgStatement * | insertionPoint, |
bool | insertionPointIsScope, | ||
SgNode * | node_copy, | ||
SgNode * | node_original | ||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Definition at line 17013 of file sageBuilder.C.
References buildConstType(), buildPointerType(), SgNode::class_name(), SgType::class_name(), SgClassType::class_name(), SgTypedefType::class_name(), SgStatement::class_name(), SgScopeStatement::class_name(), SgGlobal::class_name(), SgClassDefinition::class_name(), SgFunctionDeclaration::class_name(), SgExpression::class_name(), SgFunctionSymbol::class_name(), errorCheckingTargetAST(), findAssociatedSymbolInTargetAST(), SgClassDefinition::get_declaration(), SgDeclarationStatement::get_definingDeclaration(), SgLocatedNode::get_file_info(), SgNode::get_file_info(), SgExpression::get_file_info(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgBinaryOp::get_lhs_operand(), SgEnumDeclaration::get_name(), SgVariableSymbol::get_name(), SgFunctionSymbol::get_name(), SgMemberFunctionSymbol::get_name(), SgNode::get_parent(), SgBinaryOp::get_rhs_operand(), SgEnumDeclaration::get_scope(), SgTypedefDeclaration::get_scope(), SgClassDeclaration::get_scope(), SgFunctionDeclaration::get_scope(), SgStatement::get_scope(), SgFunctionDeclaration::get_symbol_from_symbol_table(), SgScopeStatement::get_symbol_table(), SgEnumDeclaration::get_type(), SgExpression::get_type(), SgMemberFunctionSymbol::get_type(), SgModifierType::get_typeModifier(), SageInterface::getEnclosingFileNode(), SgType::getInternalTypes(), getTargetFileType(), SgStatement::hasExplicitScope(), SgExpression::hasExplicitType(), SgScopeStatement::insert_symbol(), SageInterface::lookupClassSymbolInParentScopes(), SageInterface::lookupEnumSymbolInParentScopes(), SageInterface::lookupFunctionSymbolInParentScopes(), SageInterface::lookupTypedefSymbolInParentScopes(), SageInterface::lookupVariableSymbolInParentScopes(), SgSymbolTable::print(), resetDeclaration(), SgInitializedName::search_for_symbol_from_symbol_table(), SgDeclarationStatement::search_for_symbol_from_symbol_table(), SgExpression::set_explicitly_stored_type(), SgStatement::set_scope(), SgEnumDeclaration::set_scope(), SgTypedefDeclaration::set_scope(), SgClassDeclaration::set_scope(), SgFunctionDeclaration::set_scope(), SgEnumDeclaration::set_type(), SgSymbolTable::size(), SgType::stripType(), and SgNode::variantT().
Referenced by fixupCopyOfAstFromSeparateFileInNewTargetAst().
SgType * SageBuilder::getTargetFileTypeSupport | ( | SgType * | snippet_type, |
SgScopeStatement * | targetScope | ||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Definition at line 16122 of file sageBuilder.C.
References SgType::class_name(), SgNamedType::class_name(), SgDeclarationStatement::class_name(), findAssociatedSymbolInTargetAST(), SgEnumDeclaration::get_name(), SageInterface::get_name(), SgScopeStatement::get_symbol_table(), SgEnumDeclaration::get_type(), SgClassSymbol::get_type(), SgTypedefSymbol::get_type(), SgEnumSymbol::get_type(), SageInterface::lookupClassSymbolInParentScopes(), SageInterface::lookupEnumSymbolInParentScopes(), SageInterface::lookupTypedefSymbolInParentScopes(), SgSymbolTable::print(), SgSymbolTable::size(), and SgNamedType::variantT().
Referenced by getTargetFileType().
SgType * SageBuilder::getTargetFileType | ( | SgType * | snippet_type, |
SgScopeStatement * | targetScope | ||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Definition at line 16420 of file sageBuilder.C.
References buildConstType(), buildPointerType(), SgType::class_name(), SgNamedType::class_name(), SgDeclarationStatement::class_name(), findAssociatedSymbolInTargetAST(), SgEnumDeclaration::get_name(), SageInterface::get_name(), SgEnumDeclaration::get_type(), SgClassSymbol::get_type(), SgTemplateClassSymbol::get_type(), SgTypedefSymbol::get_type(), SgEnumSymbol::get_type(), SgModifierType::get_typeModifier(), SgType::getInternalTypes(), getTargetFileTypeSupport(), SageInterface::lookupClassSymbolInParentScopes(), SageInterface::lookupEnumSymbolInParentScopes(), SageInterface::lookupTemplateClassSymbolInParentScopes(), SageInterface::lookupTypedefSymbolInParentScopes(), and SgNamedType::variantT().
Referenced by fixupCopyOfNodeFromSeparateFileInNewTargetAst().
SgSymbol * SageBuilder::findAssociatedSymbolInTargetAST | ( | SgDeclarationStatement * | snippet_declaration, |
SgScopeStatement * | targetScope | ||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Definition at line 15460 of file sageBuilder.C.
References SgScopeStatement::class_name(), SgDeclarationStatement::class_name(), SgClassDefinition::get_declaration(), SgNamespaceSymbol::get_declaration(), SgLocatedNode::get_file_info(), SgEnumDeclaration::get_name(), SgNamespaceDeclarationStatement::get_name(), SgEnumDeclaration::get_scope(), SgStatement::get_scope(), SgScopeStatement::isNamedScope(), SageInterface::lookupEnumSymbolInParentScopes(), and SgDeclarationStatement::variantT().
Referenced by fixupCopyOfNodeFromSeparateFileInNewTargetAst(), getTargetFileType(), and getTargetFileTypeSupport().
SgDeclarationStatement * SageBuilder::findAssociatedDeclarationInTargetAST | ( | SgDeclarationStatement * | snippet_declaration, |
SgScopeStatement * | targetScope | ||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Definition at line 15725 of file sageBuilder.C.
References SgScopeStatement::class_name(), SgGlobal::class_name(), SgDeclarationStatement::class_name(), SgClassDefinition::get_declaration(), SgNamespaceSymbol::get_declaration(), SgDeclarationStatement::get_definingDeclaration(), SgNamespaceDeclarationStatement::get_definition(), SgLocatedNode::get_file_info(), SgEnumDeclaration::get_name(), SgNamespaceDeclarationStatement::get_name(), SageInterface::get_name(), SgEnumDeclaration::get_scope(), SgStatement::get_scope(), SgFile::getFileName(), SageInterface::hasSameGlobalScope(), SgScopeStatement::isNamedScope(), SageInterface::lookupEnumSymbolInParentScopes(), and SgDeclarationStatement::variantT().
void SageBuilder::errorCheckingTargetAST | ( | SgNode * | node_copy, |
SgNode * | node_original, | ||
SgFile * | targetFile, | ||
bool | failOnWarning | ||
) |
Error checking the inserted snippet AST.
Definition at line 16779 of file sageBuilder.C.
References SgNode::class_name(), SgScopeStatement::class_name(), SgDeclarationStatement::get_definingDeclaration(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgStatement::get_scope(), SgExpression::get_type(), SageInterface::getEnclosingFileNode(), SgStatement::hasExplicitScope(), and SgExpression::hasExplicitType().
Referenced by fixupCopyOfNodeFromSeparateFileInNewTargetAst().
ROSE_DLL_API SgVarRefExp * SageBuilder::buildJavaArrayLengthVarRefExp | ( | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgScopeStatement * SageBuilder::buildScopeStatement | ( | SgClassDefinition * | = NULL | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaTypeExpression * SageBuilder::buildJavaTypeExpression | ( | SgType * | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaMarkerAnnotation * SageBuilder::buildJavaMarkerAnnotation | ( | SgType * | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaMemberValuePair * SageBuilder::buildJavaMemberValuePair | ( | const SgName & | , |
SgExpression * | |||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaSingleMemberAnnotation * SageBuilder::buildJavaSingleMemberAnnotation | ( | SgType * | , |
SgExpression * | |||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaNormalAnnotation * SageBuilder::buildJavaNormalAnnotation | ( | SgType * | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaNormalAnnotation * SageBuilder::buildJavaNormalAnnotation | ( | SgType * | , |
std::list< SgJavaMemberValuePair * > & | |||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgInitializedName * SageBuilder::buildJavaFormalParameter | ( | SgType * | , |
const SgName & | , | ||
bool | is_var_args = false , |
||
bool | is_final = false |
||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaPackageStatement * SageBuilder::buildJavaPackageStatement | ( | std::string | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaImportStatement * SageBuilder::buildJavaImportStatement | ( | std::string | , |
bool | |||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgClassDeclaration * SageBuilder::buildJavaDefiningClassDeclaration | ( | SgScopeStatement * | , |
std::string | , | ||
SgClassDeclaration::class_types | kind = SgClassDeclaration::e_class |
||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgSourceFile * SageBuilder::buildJavaSourceFile | ( | SgProject * | , |
std::string | , | ||
SgClassDefinition * | , | ||
std::string | |||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgArrayType * SageBuilder::getUniqueJavaArrayType | ( | SgType * | , |
int | |||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
Referenced by SageInterface::findJavaMain().
ROSE_DLL_API SgJavaParameterizedType * SageBuilder::getUniqueJavaParameterizedType | ( | SgNamedType * | , |
SgTemplateParameterPtrList * | |||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaQualifiedType * SageBuilder::getUniqueJavaQualifiedType | ( | SgClassDeclaration * | , |
SgNamedType * | , | ||
SgNamedType * | |||
) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaWildcardType * SageBuilder::getUniqueJavaWildcardUnbound | ( | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaWildcardType * SageBuilder::getUniqueJavaWildcardExtends | ( | SgType * | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
ROSE_DLL_API SgJavaWildcardType * SageBuilder::getUniqueJavaWildcardSuper | ( | SgType * | ) |
Build a SgFile node and attach it to SgProject.
Build a SgFile node.
The input file will be loaded if exists, or an empty one will be generated from scratch transparently. Output file name is used to specify the output file name of unparsing. The final SgFile will be inserted to project automatically. If not provided, a new SgProject will be generated internally. Using SgFile->get_project() to retrieve it in this case.
T * SageBuilder::buildUnaryExpression | ( | SgExpression * | operand | ) |
Template function to build a unary expression of type T. Instantiated functions include:buildAddressOfOp(),buildBitComplementOp(),buildBitComplementOp(),buildMinusOp(),buildNotOp(),buildPointerDerefExp(),buildUnaryAddOp(),buildMinusMinusOp(),buildPlusPlusOp(). They are also used for the unary vararg operators (which are not technically unary operators).
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 1757 of file sageBuilder.h.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
T * SageBuilder::buildUnaryExpression_nfi | ( | SgExpression * | operand | ) |
Template function to build a unary expression of type T with no file info. Instantiated functions include:buildAddressOfOp(),buildBitComplementOp(),buildBitComplementOp(),buildMinusOp(),buildNotOp(),buildPointerDerefExp(),buildUnaryAddOp(),buildMinusMinusOp(),buildPlusPlusOp(). They are also used for the unary vararg operators (which are not technically unary operators).
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 1775 of file sageBuilder.h.
References SgNode::set_parent(), and SageInterface::setSourcePosition().
T * SageBuilder::buildBinaryExpression | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
Template function to build a binary expression of type T, taking care of parent pointers, file info, lvalue, etc. Available instances include: buildAddOp(), buildAndAssignOp(), buildAndOp(), buildArrowExp(),buildArrowStarOp(),buildAtOp, buildAssignOp(),buildBitAndOp(),buildBitOrOp(),buildBitXorOp(),buildCommaOpExp(), buildConcatenationOp(),buildDivAssignOp(),buildDivideOp(),buildDotExp(),buildEqualityOp(),buildExponentiationOp(),buildGreaterOrEqualOp(),buildGreaterThanOp(),buildIntegerDivideOp(),buildIorAssignOp(),buildLessOrEqualOp(),buildLessThanOp(),buildLshiftAssignOp(),buildLshiftOp(),buildMinusAssignOp(),buildModAssignOp(),buildModOp(),buildMultAssignOp(),buildMultiplyOp(),buildNotEqualOp(),buildOrOp(),buildPlusAssignOp(),buildPntrArrRefExp(),buildRshiftAssignOp(),buildRshiftOp(),buildReplicationOp,buildScopeOp(),buildSubtractOp()buildXorAssignOp()
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 1798 of file sageBuilder.h.
References SgNode::set_parent(), and SageInterface::setOneSourcePositionForTransformation().
T * SageBuilder::buildBinaryExpression_nfi | ( | SgExpression * | lhs, |
SgExpression * | rhs | ||
) |
Template function to build a binary expression of type T, taking care of parent pointers, but without file-info. Available instances include: buildAddOp(), buildAndAssignOp(), buildAndOp(), buildArrowExp(),buildArrowStarOp(),buildAtOp, buildAssignOp(),buildBitAndOp(),buildBitOrOp(),buildBitXorOp(),buildCommaOpExp(), buildConcatenationOp(),buildDivAssignOp(),buildDivideOp(),buildDotExp(),buildEqualityOp(),buildExponentiationOp(),buildGreaterOrEqualOp(),buildGreaterThanOp(),buildIntegerDivideOp(),buildIorAssignOp(),buildLessOrEqualOp(),buildLessThanOp(),buildLshiftAssignOp(),buildLshiftOp(),buildMinusAssignOp(),buildModAssignOp(),buildModOp(),buildMultAssignOp(),buildMultiplyOp(),buildNotEqualOp(),buildOrOp(),buildPlusAssignOp(),buildPntrArrRefExp(),buildRshiftAssignOp(),buildRshiftOp(),buildReplicationOp(),buildScopeOp(),buildSubtractOp()buildXorAssignOp()
The instantiated functions' prototypes are not shown since they are expanded using macros. Doxygen is not smart enough to handle macro expansion.
Definition at line 1819 of file sageBuilder.h.
References SgNode::set_parent(), and SageInterface::setSourcePosition().
actualFunction * SageBuilder::buildNondefiningFunctionDeclaration_T | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | paralist, | ||
bool | isMemberFunction, | ||
SgScopeStatement * | scope, | ||
SgExprListExp * | decoratorList, | ||
unsigned int | functionConstVolatileFlags, | ||
SgTemplateArgumentPtrList * | templateArgumentsList, | ||
SgTemplateParameterPtrList * | templateParameterList, | ||
SgStorageModifier::storage_modifier_enum | sm | ||
) |
Definition at line 2809 of file sageBuilder.C.
actualFunction * SageBuilder::buildDefiningFunctionDeclaration_T | ( | const SgName & | name, |
SgType * | return_type, | ||
SgFunctionParameterList * | parlist, | ||
bool | isMemberFunction, | ||
SgScopeStatement * | scope, | ||
SgExprListExp * | decoratorList, | ||
unsigned int | functionConstVolatileFlags, | ||
actualFunction * | first_nondefinng_declaration, | ||
SgTemplateArgumentPtrList * | templateArgumentsList | ||
) |
A template function for function declaration builders.
Definition at line 3784 of file sageBuilder.C.
References appendTemplateArgumentsToName(), SageInterface::collectVarRefs(), SgScopeStatement::containsOnlyDeclarations(), SgFunctionParameterList::get_args(), SgDeclarationStatement::get_firstNondefiningDeclaration(), SgVariableSymbol::get_name(), SgTemplateInstantiationMemberFunctionDecl::get_templateArguments(), SgTemplateInstantiationFunctionDecl::get_templateArguments(), SgScopeStatement::insert_symbol(), SageInterface::is_language_case_insensitive(), SageInterface::language_may_contain_nondeclarations_in_scope(), SgFunctionDefinition::set_body(), SgDeclarationStatement::set_definingDeclaration(), SgNode::set_parent(), SageInterface::setParameterList(), SageInterface::setSourcePositionAtRootAndAllChildren(), setTemplateArgumentsInDeclaration(), setTemplateNameInTemplateInstantiations(), setTemplateParametersInDeclaration(), SageInterface::templateArgumentListEquivalence(), and topScopeStack().
Sawyer::Message::Facility SageBuilder::mlog |
Definition at line 58 of file sageBuilder.C.
|
extern |
Support for construction of case sensitive/insensitive symbol table handling in scopes.
Definition at line 101 of file sageBuilder.C.
Referenced by buildSwitchStatement_nfi(), buildWhileStmt_nfi(), and SageInterface::is_language_case_insensitive().
|
extern |
C++ SageBuilder namespace specific state for storage of the source code position state (used to control how the source code positon is defined for IR nodes built within the SageBuilder interface).
C++ SageBuilder namespace specific state for storage of the source code position state.
Definition at line 127 of file sageInterface.C.
Referenced by buildClassDeclaration_nfi(), buildNondefiningTemplateMemberFunctionDeclaration(), getSourcePositionClassificationMode(), and setSourcePositionClassificationMode().