Changes in src/InitTweak/InitTweak.h [aedfd91:64071c2]
- File:
-
- 1 edited
-
src/InitTweak/InitTweak.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/InitTweak/InitTweak.h
raedfd91 r64071c2 26 26 // helper functions for initialization 27 27 namespace InitTweak { 28 /// transform Initializer into an argument list that can be passed to a call expression29 std::list< Expression * > makeInitList( Initializer * init );28 /// transform Initializer into an argument list that can be passed to a call expression 29 std::list< Expression * > makeInitList( Initializer * init ); 30 30 31 /// True if the resolver should try to construct objDecl32 bool tryConstruct( ObjectDecl * objDecl );31 /// True if the resolver should try to construct objDecl 32 bool tryConstruct( ObjectDecl * objDecl ); 33 33 34 /// True if the Initializer contains designations35 bool isDesignated( Initializer * init );34 /// True if the Initializer contains designations 35 bool isDesignated( Initializer * init ); 36 36 37 /// Non-Null if expr is a call expression whose target function is intrinsic 38 ApplicationExpr * isIntrinsicCallExpr( Expression * expr ); 37 /// True if stmt is a call statement where the function called is intrinsic and takes one parameter. 38 /// Intended to be used for default ctor/dtor calls, but might have use elsewhere. 39 /// Currently has assertions that make it less than fully general. 40 bool isInstrinsicSingleArgCallStmt( Statement * expr ); 39 41 40 /// True if stmt is a call statement where the function called is intrinsic and takes one parameter. 41 /// Intended to be used for default ctor/dtor calls, but might have use elsewhere. 42 /// Currently has assertions that make it less than fully general. 43 bool isInstrinsicSingleArgCallStmt( Statement * expr ); 42 /// get the Ctor/Dtor call expression from a Statement that looks like a generated ctor/dtor call 43 Expression * getCtorDtorCall( Statement * stmt ); 44 44 45 /// get the Ctor/Dtor call expression from a Statement that looks like a generated ctor/dtor call 46 Expression * getCtorDtorCall( Statement * stmt);45 /// returns the name of the function being called 46 std::string getFunctionName( Expression * expr ); 47 47 48 /// returns the name of the function being called 49 std::string getFunctionName( Expression * expr);48 /// returns the argument to a call expression in position N indexed from 0 49 Expression *& getCallArg( Expression * callExpr, unsigned int pos ); 50 50 51 /// returns the argument to a call expression in position N indexed from 0 52 Expression *& getCallArg( Expression * callExpr, unsigned int pos);51 /// returns the base type of a PointerType or ArrayType, else returns NULL 52 Type * getPointerBase( Type * ); 53 53 54 /// returns the base type of a PointerType or ArrayType, else returns NULL 55 Type * getPointerBase( Type * ); 56 57 /// returns the argument if it is a PointerType or ArrayType, else returns NULL 58 Type * isPointerType( Type * ); 59 60 /// returns true if expr is trivially a compile-time constant 61 bool isConstExpr( Expression * expr ); 62 bool isConstExpr( Initializer * init ); 54 /// returns the argument if it is a PointerType or ArrayType, else returns NULL 55 Type * isPointerType( Type * ); 63 56 } // namespace 64 57
Note:
See TracChangeset
for help on using the changeset viewer.