|
| union_decl (const environment &env, const string &name, bool is_declaration_only=true) |
| Constructor for the union_decl type. More...
|
|
| union_decl (const environment &env, const string &name, size_t size_in_bits, const location &locus, visibility vis) |
| Constructor for the union_decl type. More...
|
|
| union_decl (const environment &env, const string &name, size_t size_in_bits, const location &locus, visibility vis, bool is_anonymous) |
| Constructor for the union_decl type. More...
|
|
| union_decl (const environment &env, const string &name, size_t size_in_bits, const location &locus, visibility vis, member_types &mbrs, data_members &data_mbrs, member_functions &member_fns) |
| Constructor for the union_decl type. More...
|
|
| union_decl (const environment &env, const string &name, size_t size_in_bits, const location &locus, visibility vis, member_types &mbrs, data_members &data_mbrs, member_functions &member_fns, bool is_anonymous) |
| Constructor for the union_decl type. More...
|
|
virtual | ~union_decl () |
| Destructor of the union_decl type. More...
|
|
virtual string | get_pretty_representation (bool internal=false, bool qualified_name=true) const |
| Getter of the pretty representation of the current instance of union_decl. More...
|
|
virtual bool | operator== (const class_or_union &) const |
| Equality operator for union_decl. More...
|
|
virtual bool | operator== (const decl_base &) const |
| Comparison operator for union_decl. More...
|
|
virtual bool | operator== (const type_base &) const |
| Equality operator for union_decl. More...
|
|
virtual bool | operator== (const union_decl &) const |
| Comparison operator for union_decl. More...
|
|
virtual bool | traverse (ir_node_visitor &v) |
| This implements the ir_traversable_base::traverse pure virtual function. More...
|
|
| class_or_union (const environment &env, const string &name, bool is_declaration_only=true) |
| Constructor of the class_or_union type. More...
|
|
| class_or_union (const environment &env, const string &name, size_t size_in_bits, size_t align_in_bits, const location &locus, visibility vis) |
| A constructor for instances of class_or_union. More...
|
|
| class_or_union (const environment &env, const string &name, size_t size_in_bits, size_t align_in_bits, const location &locus, visibility vis, member_types &mbrs, data_members &data_mbrs, member_functions &member_fns) |
| A Constructor for instances of class_or_union. More...
|
|
virtual | ~class_or_union () |
| Destrcutor of the class_or_union type. More...
|
|
void | add_data_member (var_decl_sptr v, access_specifier a, bool is_laid_out, bool is_static, size_t offset_in_bits) |
| Add a data member to the current instance of class_or_union. More...
|
|
void | add_member_class_template (member_class_template_sptr m) |
| Append a member class template to the class_or_union. More...
|
|
void | add_member_function (method_decl_sptr f, access_specifier a, bool is_static, bool is_ctor, bool is_dtor, bool is_const) |
| Add a member function. More...
|
|
void | add_member_function (method_decl_sptr f, access_specifier a, bool is_virtual, size_t vtable_offset, bool is_static, bool is_ctor, bool is_dtor, bool is_const) |
| Add a member function to the current instance of class_or_union. More...
|
|
void | add_member_function_template (member_function_template_sptr) |
| Append a member function template to the class_or_union. More...
|
|
const var_decl_sptr | find_anonymous_data_member (const var_decl_sptr &) const |
| Find an anonymous data member in the class. More...
|
|
const var_decl_sptr | find_data_member (const string &) const |
| Find a data member of a given name in the current class_or_union. More...
|
|
const var_decl_sptr | find_data_member (const var_decl_sptr &) const |
| Find a given data member. More...
|
|
method_decl * | find_member_function (const string &mangled_name) |
| Find a method, using its linkage name as a key. More...
|
|
const method_decl * | find_member_function (const string &mangled_name) const |
| Find a method, using its linkage name as a key. More...
|
|
method_decl * | find_member_function_from_signature (const string &s) |
| Find a method (member function) using its signature (pretty representation) as a key. More...
|
|
const method_decl * | find_member_function_from_signature (const string &s) const |
| Find a method (member function) using its signature (pretty representation) as a key. More...
|
|
method_decl_sptr | find_member_function_sptr (const string &mangled_name) |
| Find a method, using its linkage name as a key. More...
|
|
virtual size_t | get_alignment_in_bits () const |
| Getter of the alignment of the class_or_union type. More...
|
|
const data_members & | get_data_members () const |
| Get the data members of this class_or_union. More...
|
|
const member_class_templates & | get_member_class_templates () const |
| Get the member class templates of this class. More...
|
|
const member_function_templates & | get_member_function_templates () const |
| Get the member function templates of this class. More...
|
|
const member_functions & | get_member_functions () const |
| Get the member functions of this class_or_union. More...
|
|
const data_members & | get_non_static_data_members () const |
| Get the non-static data memebers of this class_or_union. More...
|
|
virtual size_t | get_num_anonymous_member_classes () const |
| Get the number of anonymous member classes contained in this class. More...
|
|
virtual size_t | get_num_anonymous_member_enums () const |
| Get the number of anonymous member enums contained in this class. More...
|
|
virtual size_t | get_num_anonymous_member_unions () const |
| Get the number of anonymous member unions contained in this class. More...
|
|
virtual size_t | get_size_in_bits () const |
| Getter of the size of the class_or_union type. More...
|
|
bool | has_no_member () const |
|
virtual void | set_alignment_in_bits (size_t) |
| Setter of the alignment of the class type. More...
|
|
virtual void | set_size_in_bits (size_t) |
| Setter of the size of the class_or_union type. More...
|
|
| scope_type_decl (const environment &env, const string &name, size_t size_in_bits, size_t alignment_in_bits, const location &locus, visibility vis=VISIBILITY_DEFAULT) |
| Constructor. More...
|
|
| scope_decl (const environment &env, const string &name, const location &locus, visibility vis=VISIBILITY_DEFAULT) |
| Constructor of the scope_decl type. More...
|
|
| scope_decl (const environment &env, location &l) |
| Constructor of the scope_decl type. More...
|
|
void | add_member_type (type_base_sptr t) |
| Add a member type to the current instance of class_or_union. More...
|
|
type_base_sptr | add_member_type (type_base_sptr t, access_specifier a) |
| Add a member type to the current instance of class_or_union. More...
|
|
bool | find_iterator_for_member (const decl_base *, declarations::iterator &) |
| Find a member of the current scope and return an iterator on it. More...
|
|
bool | find_iterator_for_member (const decl_base_sptr, declarations::iterator &) |
| Find a member of the current scope and return an iterator on it. More...
|
|
type_base_sptr | find_member_type (const string &name) const |
| Find a member type of a given name, inside the current scope_decl. More...
|
|
canonical_type_sptr_set_type & | get_canonical_types () |
| @eturn the set of canonical types of the the current scope. More...
|
|
const canonical_type_sptr_set_type & | get_canonical_types () const |
| @eturn the set of canonical types of the the current scope. More...
|
|
virtual size_t | get_hash () const |
| Return the hash value for the current instance of scope_decl. More...
|
|
declarations & | get_member_decls () |
| Getter for the member declarations carried by the current scope_decl. More...
|
|
const declarations & | get_member_decls () const |
| Getter for the member declarations carried by the current scope_decl. More...
|
|
scopes & | get_member_scopes () |
| Getter for the scopes carried by the current scope. More...
|
|
const scopes & | get_member_scopes () const |
| Getter for the scopes carried by the current scope. More...
|
|
const type_base_sptrs_type & | get_member_types () const |
| Get the member types of this scope_decl. More...
|
|
const type_base_sptrs_type & | get_sorted_canonical_types () const |
| Return a vector of sorted canonical types of the current scope. More...
|
|
const declarations & | get_sorted_member_decls () const |
| Getter for the sorted member declarations carried by the current scope_decl. More...
|
|
const type_base_sptrs_type & | get_sorted_member_types () const |
| Get the sorted member types of this scope_decl. More...
|
|
void | insert_member_type (type_base_sptr t, declarations::iterator before) |
| Insert a member type. More...
|
|
bool | is_empty () const |
| Test if the current scope is empty. More...
|
|
void | remove_member_type (type_base_sptr t) |
| Remove a member type from the current class_or_union scope. More...
|
|
| decl_base (const environment &, const location &) |
| Constructor for the decl_base type. More...
|
|
| decl_base (const environment &e, const interned_string &name, const location &locus, const interned_string &mangled_name=interned_string(), visibility vis=VISIBILITY_DEFAULT) |
| Constructor. More...
|
|
| decl_base (const environment &e, const string &name, const location &locus, const string &mangled_name="", visibility vis=VISIBILITY_DEFAULT) |
| Constructor for the decl_base type. More...
|
|
virtual | ~decl_base () |
| Destructor of the decl_base type. More...
|
|
const decl_base_sptr | get_definition_of_declaration () const |
| If this decl_base is declaration-only, get its definition, if any. More...
|
|
const decl_base_sptr | get_earlier_declaration () const |
| If this decl_base is a definition, get its earlier declaration. More...
|
|
bool | get_has_anonymous_parent () const |
| Get the "has_anonymous_parent" flag of the current declaration. More...
|
|
bool | get_is_anonymous () const |
| Test if the current declaration is anonymous. More...
|
|
bool | get_is_anonymous_or_has_anonymous_parent () const |
|
bool | get_is_declaration_only () const |
| Test if a decl_base is a declaration-only decl. More...
|
|
bool | get_is_in_public_symbol_table () const |
| Test if the decl is defined in a ELF symbol table as a public symbol. More...
|
|
const interned_string & | get_linkage_name () const |
| Getter for the mangled name. More...
|
|
const location & | get_location () const |
| Get the location of a given declaration. More...
|
|
const decl_base * | get_naked_definition_of_declaration () const |
| If this decl_base is declaration-only, get its definition, if any. More...
|
|
const interned_string & | get_name () const |
| Getter for the name of the current decl. More...
|
|
typedef_decl_sptr | get_naming_typedef () const |
| Getter for the naming typedef of the current decl. More...
|
|
virtual const interned_string & | get_qualified_name (bool internal=false) const |
| Return the qualified name of the decl. More...
|
|
virtual void | get_qualified_name (interned_string &qualified_name, bool internal=false) const |
| Compute the qualified name of the decl. More...
|
|
const interned_string & | get_qualified_parent_name () const |
| Return a copy of the qualified name of the parent of the current decl. More...
|
|
scope_decl * | get_scope () const |
| Return the type containing the current decl, if any. More...
|
|
virtual const interned_string & | get_scoped_name () const |
| Return the scoped name of the decl. More...
|
|
visibility | get_visibility () const |
| Getter for the visibility of the decl. More...
|
|
virtual bool | operator!= (const decl_base &) const |
| Inequality operator. More...
|
|
void | set_definition_of_declaration (const decl_base_sptr &) |
| Set the definition of this declaration-only decl_base. More...
|
|
void | set_earlier_declaration (const decl_base_sptr &) |
| set the earlier declaration of this decl_base definition. More...
|
|
void | set_is_anonymous (bool) |
| Set the "is_anonymous" flag of the current declaration. More...
|
|
void | set_is_declaration_only (bool f) |
| Set a flag saying if the enum_type_decl is a declaration-only enum_type_decl. More...
|
|
void | set_is_in_public_symbol_table (bool) |
| Set the flag saying if this decl is from a symbol that is in a public symbols table, defined as public (global or weak). More...
|
|
virtual void | set_linkage_name (const string &m) |
| Setter for the linkage name. More...
|
|
void | set_location (const location &l) |
| Set the location for a given declaration. More...
|
|
void | set_name (const string &n) |
| Setter for the name of the decl. More...
|
|
void | set_naming_typedef (const typedef_decl_sptr &) |
| Set the naming typedef of the current instance of decl_base. More...
|
|
virtual void | set_scope (scope_decl *) |
| Setter of the scope of the current decl. More...
|
|
void | set_visibility (visibility v) |
| Setter for the visibility of the decl. More...
|
|
| type_or_decl_base (const environment &, enum type_or_decl_kind k=ABSTRACT_TYPE_OR_DECL) |
| Constructor of type_or_decl_base. More...
|
|
virtual | ~type_or_decl_base () |
| The destructor of the type_or_decl_base type. More...
|
|
location & | get_artificial_location () const |
| Getter of the artificial location of the artifact. More...
|
|
corpus * | get_corpus () |
| Get the corpus this ABI artifact belongs to. More...
|
|
const corpus * | get_corpus () const |
| Get the corpus this ABI artifact belongs to. More...
|
|
const environment & | get_environment () const |
| Getter of the environment of the current ABI artifact. More...
|
|
bool | get_is_artificial () const |
| Getter of the flag that says if the artefact is artificial. More...
|
|
translation_unit * | get_translation_unit () |
| Get the translation_unit this ABI artifact belongs to. More...
|
|
const translation_unit * | get_translation_unit () const |
| Get the translation_unit this ABI artifact belongs to. More...
|
|
bool | has_artificial_location () const |
| Test if the current ABI artifact carries an artificial location. More...
|
|
void | set_artificial_location (const location &) |
| Setter of the artificial location of the artificat. More...
|
|
void | set_is_artificial (bool) |
| Setter of the flag that says if the artefact is artificial. More...
|
|
void | set_translation_unit (translation_unit *) |
| Set the translation_unit this ABI artifact belongs to. More...
|
|
virtual | ~traversable_base () |
| Destructor of the traversable_base type. More...
|
|
| type_base (const environment &e, size_t s, size_t a) |
| The constructor of type_base. More...
|
|
const interned_string & | get_cached_pretty_representation (bool internal=false) const |
| Get the pretty representation of the current type. More...
|
|
type_base_sptr | get_canonical_type () const |
| Getter of the canonical type of the current instance of type_base. More...
|
|
type_base * | get_naked_canonical_type () const |
| Getter of the canonical type pointer. More...
|
|
virtual bool | operator!= (const type_base &) const |
| Inequality operator. More...
|
|
|
typedef vector< type_base_sptr > | member_types |
| Convenience typedef. More...
|
|
typedef vector< var_decl_sptr > | data_members |
| Convenience typedef. More...
|
|
typedef vector< method_decl_sptr > | member_functions |
| Convenience typedef. More...
|
|
typedef unordered_map< ssize_t, member_functions > | virtual_mem_fn_map_type |
| Convenience typedef. More...
|
|
typedef unordered_map< string, method_decl * > | string_mem_fn_ptr_map_type |
| Convenience typedef. More...
|
|
typedef unordered_map< string, method_decl_sptr > | string_mem_fn_sptr_map_type |
| Convenience typedef. More...
|
|
typedef std::vector< decl_base_sptr > | declarations |
| Convenience typedef for a vector of decl_base_sptr. More...
|
|
typedef std::vector< function_type_sptr > | function_types |
| Convenience typedef for a vector of function_type_sptr. More...
|
|
typedef std::vector< scope_decl_sptr > | scopes |
| Convenience typedef for a vector of scope_decl_sptr. More...
|
|
enum | binding { BINDING_NONE
, BINDING_LOCAL
, BINDING_GLOBAL
, BINDING_WEAK
} |
| ELF binding. More...
|
|
enum | visibility {
VISIBILITY_NONE
, VISIBILITY_DEFAULT
, VISIBILITY_PROTECTED
, VISIBILITY_HIDDEN
,
VISIBILITY_INTERNAL
} |
| ELF visibility. More...
|
|
priv * | priv_ |
|
priv * | priv_ |
|
priv * | priv_ |
|
enum | type_or_decl_kind {
ABSTRACT_TYPE_OR_DECL
, ABSTRACT_DECL_BASE
, ABSTRACT_SCOPE_DECL
, GLOBAL_SCOPE_DECL
,
NAMESPACE_DECL
, VAR_DECL
, FUNCTION_DECL
, FUNCTION_PARAMETER_DECL
,
METHOD_DECL
, TEMPLATE_DECL
, ABSTRACT_TYPE_BASE
, ABSTRACT_SCOPE_TYPE_DECL
,
BASIC_TYPE
, QUALIFIED_TYPE
, POINTER_TYPE
, REFERENCE_TYPE
,
ARRAY_TYPE
, ENUM_TYPE
, TYPEDEF_TYPE
, CLASS_TYPE
,
UNION_TYPE
, FUNCTION_TYPE
, METHOD_TYPE
} |
| This is a bitmap type which instance is meant to contain the runtime type of a given ABI artifact. Bits of the identifiers of the type of a given artifact as well as the types it inherits from are to be set to 1. More...
|
|
virtual decl_base_sptr | add_member_decl (const decl_base_sptr &) |
| Add a member declaration to the current instance of class_or_union. The member declaration can be either a member type, data member, member function, or member template. More...
|
|
decl_base_sptr | insert_member_decl (decl_base_sptr member) |
| Insert a data member to this class_or_union type. More...
|
|
void | maybe_fixup_members_of_anon_data_member (var_decl_sptr &anon_dm) |
| Fixup the members of the type of an anonymous data member. More...
|
|
virtual void | remove_member_decl (decl_base_sptr) |
| Remove a given decl from the current class_or_union scope. More...
|
|
decl_base_sptr | insert_member_decl (decl_base_sptr member, declarations::iterator before) |
| Insert a member decl to this scope, right before an element pointed to by a given iterator. Note that user code should not use this, but rather use insert_decl_into_scope. More...
|
|
| decl_base (const decl_base &) |
|
void | clear_qualified_name () |
| Clear the qualified name of this decl. More...
|
|
context_rel * | get_context_rel () |
| Getter for the context relationship. More...
|
|
const context_rel * | get_context_rel () const |
| Getter for the context relationship. More...
|
|
const interned_string & | peek_qualified_name () const |
| Getter for the qualified name. More...
|
|
const interned_string & | peek_temporary_qualified_name () const |
| Getter of the temporary qualified name of the current declaration. More...
|
|
void | set_context_rel (context_rel *c) |
|
void | set_qualified_name (const interned_string &) const |
| Setter for the qualified name. More...
|
|
void | set_temporary_qualified_name (const interned_string &) const |
| Setter for the temporary qualified name of the current declaration. More...
|
|
bool | hashing_started () const |
| Getter for the 'hashing_started' property. More...
|
|
void | hashing_started (bool) const |
| Setter for the 'hashing_started' property. More...
|
|
enum type_or_decl_kind | kind () const |
| Getter for the "kind" property of type_or_decl_base type. More...
|
|
void | kind (enum type_or_decl_kind) |
| Setter for the "kind" property of type_or_decl_base type. More...
|
|
type_or_decl_base & | operator= (const type_or_decl_base &) |
|
void * | runtime_type_instance () |
| Getter of the pointer to the runtime type sub-object of the current instance. More...
|
|
const void * | runtime_type_instance () const |
| Getter of the pointer to the runtime type sub-object of the current instance. More...
|
|
void | runtime_type_instance (void *) |
| Setter of the pointer to the runtime type sub-object of the current instance. More...
|
|
void * | type_or_decl_base_pointer () |
| Getter of the pointer to either the type_base sub-object of the current instance if it's a type, or to the decl_base sub-object of the current instance if it's a decl. More...
|
|
const void * | type_or_decl_base_pointer () const |
| Getter of the pointer to either the type_base sub-object of the current instance if it's a type, or to the decl_base sub-object of the current instance if it's a decl. More...
|
|
| traversable_base () |
| Default constructor of the traversable_base type. More...
|
|
bool | visiting () const |
| This should returns false before and after the node has been visiting. During the visiting of the node (and of its children) this should return true. More...
|
|
void | visiting (bool f) |
| The traversing code should be responsible of calling this, not the user code. More...
|
|
virtual void | on_canonical_type_set () |
| This method is invoked automatically right after the current instance of class_decl has been canonicalized. More...
|
|