1#ifndef ROSE_CodeGen_Object_H
2#define ROSE_CodeGen_Object_H
7#include "sage3basic.hhh"
9namespace Rose {
namespace CodeGen {
119 static constexpr bool is_template_symbol_variant(VariantT v) {
return v == V_SgTemplateFunctionSymbol || v == V_SgTemplateMemberFunctionSymbol; }
permits to gather types and symbols to extract an API from a set of headers.
This class represents the concept of a class declaration statement. It includes the concept of an ins...
This class represents the concept of a class name within the compiler.
SgSymbol * search_for_symbol_from_symbol_table() const
User interface for retrieving the associated symbol from the declaration.
This class represents the concept of a function declaration statement.
This class represents the function being called and must be assembled in the SgFunctionCall with the ...
This class represents the notion of a declared variable.
SgSymbol * search_for_symbol_from_symbol_table() const
User interface for retrieving the associated symbol. It searches through the possible chain of prev_d...
This class represents the concept of a C++ namespace declaration.
This class represents the concept of a namespace name within the compiler.
This class represents the notion of a typedef declaration.
This class represents the variable refernece in expressions.
This class represents the concept of a C or C++ variable declaration.
const SgInitializedNamePtrList & get_variables() const
Access function for p_variables.
This class represents the concept of a variable name within the compiler (a shared container for the ...
typename object_helper< otag >::symbol_t symbol_t
The SgSymbol specialization for an Object kind /tparam otag an Object kind.
symbol_t< otag > *API::* symref_t
Pointer to an API member /tparam otag an Object kind /tparam API.
typename object_helper< otag >::decl_t declaration_t
The SgDeclarationStatement specialization for an Object kind /tparam otag an Object kind.
typename object_helper< otag >::ref_t reference_t
The SgReference specialization for an Object kind /tparam otag an Object kind.
constexpr auto is_template_symbol_variant
This function returns whether the node variant is a template symbol for an Object kind /tparam otag a...
Object
The five kind of objects manipulated by Rose::CodeGen::API and associated Rose::CodeGen::Factory.
constexpr auto search_for_symbol_from_symbol_table
This function returns the symbol associated with a declaration /tparam otag an Object kind.