libabigail
|
The abstraction of a pointer-to-member type. More...
#include <abg-ir.h>
Public Member Functions | |
ptr_to_mbr_type (const environment &env, const type_base_sptr &member_type, const type_base_sptr &containing_type, size_t size_in_bits, size_t alignment_in_bits, const location &locus) | |
A constructor for a ptr_to_mbr_type type. More... | |
virtual | ~ptr_to_mbr_type () |
Desctructor for ptr_to_mbr_type. More... | |
const type_base_sptr & | get_containing_type () const |
Getter of the type containing the member pointed-to by the current ptr_to_mbr_type. More... | |
const type_base_sptr & | get_member_type () const |
Getter of the member type of the current ptr_to_mbr_type. More... | |
virtual void | get_qualified_name (interned_string &qualified_name, bool internal=false) const |
Get the qualified name for the current ptr_to_mbr_type. More... | |
virtual const interned_string & | get_qualified_name (bool internal=false) const |
Get the qualified name for the current ptr_to_mbr_type. More... | |
bool | operator== (const ptr_to_mbr_type &) const |
Equality operator for the current ptr_to_mbr_type. More... | |
virtual bool | operator== (const type_base &) const |
Equality operator for the current ptr_to_mbr_type. More... | |
virtual bool | operator== (const decl_base &) const |
Equality operator for the current ptr_to_mbr_type. More... | |
virtual bool | traverse (ir_node_visitor &v) |
This implements the ir_traversable_base::traverse pure virtual function for ptr_to_mbr_type. More... | |
![]() | |
type_base (const environment &e, size_t s, size_t a) | |
The constructor of type_base. More... | |
virtual size_t | get_alignment_in_bits () const |
Getter for the alignment of the type. 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 size_t | get_size_in_bits () const |
Getter for the size of the type. More... | |
virtual bool | operator!= (const type_base &) const |
Inequality operator. More... | |
virtual void | set_alignment_in_bits (size_t) |
Setter for the alignment of the type. More... | |
virtual void | set_size_in_bits (size_t) |
Setter for the size of the type. 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... | |
const corpus * | get_corpus () const |
Get the corpus this ABI artifact belongs to. More... | |
corpus * | get_corpus () |
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... | |
const translation_unit * | get_translation_unit () const |
Get the translation_unit this ABI artifact belongs to. More... | |
translation_unit * | get_translation_unit () |
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... | |
![]() | |
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... | |
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 &, const location &) | |
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... | |
virtual size_t | get_hash () const |
Get the hash of a decl. If the hash hasn't been computed yet, compute it ans store its value; otherwise, just return the hash. 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 string | get_pretty_representation (bool internal=false, bool qualified_name=true) const |
Get the pretty representatin of the current declaration. 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... | |
Additional Inherited Members | |
![]() | |
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_ |
![]() | |
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, SUBRANGE_TYPE, QUALIFIED_TYPE, POINTER_TYPE, REFERENCE_TYPE, POINTER_TO_MEMBER_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 void | on_canonical_type_set () |
This method is invoked automatically right after the current instance of class_decl has been canonicalized. 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 &) |
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 () |
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... | |
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... | |
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... | |
![]() | |
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... | |
![]() | |
decl_base (const decl_base &) | |
void | clear_qualified_name () |
Clear the qualified name of this decl. More... | |
const context_rel * | get_context_rel () const |
Getter for the context relationship. More... | |
context_rel * | get_context_rel () |
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... | |
ptr_to_mbr_type | ( | const environment & | env, |
const type_base_sptr & | member_type, | ||
const type_base_sptr & | containing_type, | ||
size_t | size_in_bits, | ||
size_t | alignment_in_bits, | ||
const location & | locus | ||
) |
A constructor for a ptr_to_mbr_type type.
env | the environment to construct the ptr_to_mbr_type in. |
member_type | the member type of the of the ptr_to_mbr_type to construct. |
containing_type | the containing type of the ptr_to_mbr_type to construct. |
size_in_bits | the size (in bits) of the resulting type. |
alignment_in_bits | the alignment (in bits) of the resulting type. |
locus | the source location of the definition of the resulting type. |
|
virtual |
Desctructor for ptr_to_mbr_type.
const type_base_sptr & get_containing_type | ( | ) | const |
Getter of the type containing the member pointed-to by the current ptr_to_mbr_type.
const type_base_sptr & get_member_type | ( | ) | const |
Getter of the member type of the current ptr_to_mbr_type.
|
virtual |
Get the qualified name for the current ptr_to_mbr_type.
qualified_name | out parameter. This is set to the name of the current ptr_to_mbr_type. |
internal | if this is true, then the qualified name is for the purpose of type canoicalization. |
Reimplemented from decl_base.
|
virtual |
Get the qualified name for the current ptr_to_mbr_type.
internal | if this is true, then the qualified name is for the purpose of type canoicalization. |
Reimplemented from decl_base.
bool operator== | ( | const ptr_to_mbr_type & | o | ) | const |
Equality operator for the current ptr_to_mbr_type.
o | the other instance of ptr_to_mbr_type to compare the current instance to. |
o
.
|
virtual |
Equality operator for the current ptr_to_mbr_type.
o | the other instance of ptr_to_mbr_type to compare the current instance to. |
o
. Reimplemented from type_base.
|
virtual |
Equality operator for the current ptr_to_mbr_type.
o | the other instance of ptr_to_mbr_type to compare the current instance to. |
o
. Reimplemented from decl_base.
|
virtual |
This implements the ir_traversable_base::traverse pure virtual function for ptr_to_mbr_type.
v | the visitor used on the current instance. |
Reimplemented from decl_base.