template<typename CRT, typename API>
class Rose::CodeGen::Factory< CRT, API >
constructs expressions and types for the given API
- Template Parameters
-
Definition at line 18 of file Factory.h.
#include <Rose/CodeGen/Factory.h>
|
| Factory (Driver &driver_) |
|
template<Object otag, typename... Args> |
declaration_t< otag > * | instantiate (symbol_t< otag > *API::*obj, SgNamedType *parent, Args...args) const |
| Return an instantiation. More...
|
|
template<Object otag, typename... Args> |
reference_t< otag > * | reference (symbol_t< otag > *API::*obj, SgNamedType *parent, Args...args) const |
| Return an expression or type referencing the object. More...
|
|
template<Object otag, typename... Args> |
SgExpression * | access (symbol_t< otag > *API::*obj, SgExpression *parent, Args...args) const |
| Build expression to access a member of the parent expression. More...
|
|
template<Object otag, typename... Args> |
access_return_t< otag > * | access (symbol_t< otag > *API::*obj, SgNamedType *parent, Args...args) const |
| Build expression or type to access static member and subtype of the parent type. More...
|
|
template<typename CRT , typename API >
template<Object otag>
Select return type for access based on Object type.
- Template Parameters
-
otag | must be one of a_class/a_typedef or a_variable/a_function |
Definition at line 144 of file Factory.h.
template<typename CRT , typename API >
template<Object otag, typename... Args>
Return an instantiation.
- Template Parameters
-
otag | must be one of a_class/a_typedef/a_variable/a_function |
Args | types of the nodes to use as template arguments (SgType/SgExpression for type/non-type respectively |
- Parameters
-
obj | must points to a template symbol |
args | nodes to use as template arguments |
parent | is used when called by reference which was called by one of the access methods |
- Returns
- a template instantiation
Definition at line 61 of file Factory.h.
template<typename CRT , typename API >
template<Object otag, typename... Args>
Return an expression or type referencing the object.
Args are forwarded to instantiate
as needed.
- Template Parameters
-
otag | must be one of a_class/a_typedef/a_variable/a_function |
Args | types of template arguments (see instantiate) |
- Parameters
-
obj | points to a symbol |
args | template arguments (see instantiate) |
parent | is used when called by one of the access methods |
- Returns
- a reference expression
Definition at line 82 of file Factory.h.
Referenced by Rose::CodeGen::Factory< CRT, API >::access().
template<typename CRT , typename API >
template<Object otag, typename... Args>
template<typename CRT , typename API >
template<Object otag, typename... Args>
Build expression or type to access static member and subtype of the parent type.
Args are forwarded to instantiate
as needed.
- Template Parameters
-
otag | must be one of a_class/a_typedef or a_variable/a_function |
Args | types of template arguments (see instantiate) |
- Parameters
-
obj | points to a symbol |
lhs | |
args | template arguments (see instantiate) |
Definition at line 160 of file Factory.h.
References Rose::CodeGen::Factory< CRT, API >::reference().
The documentation for this class was generated from the following file: