|
| class_decl (const environment &env, const string &name, bool is_struct, bool is_declaration_only=true) |
| A constuctor for instances of class_decl that represent a declaration without definition. More...
|
|
| class_decl (const environment &env, const string &name, size_t size_in_bits, size_t align_in_bits, bool is_struct, const location &locus, visibility vis) |
| A constructor for instances of class_decl. More...
|
|
| class_decl (const environment &env, const string &name, size_t size_in_bits, size_t align_in_bits, bool is_struct, const location &locus, visibility vis, base_specs &bases, member_types &mbrs, data_members &data_mbrs, member_functions &member_fns) |
| A Constructor for instances of class_decl. More...
|
|
| class_decl (const environment &env, const string &name, size_t size_in_bits, size_t align_in_bits, bool is_struct, const location &locus, visibility vis, base_specs &bases, member_types &mbrs, data_members &data_mbrs, member_functions &member_fns, bool is_anonymous) |
| A Constructor for instances of class_decl. More...
|
|
| class_decl (const environment &env, const string &name, size_t size_in_bits, size_t align_in_bits, bool is_struct, const location &locus, visibility vis, bool is_anonymous) |
| A constructor for instances of class_decl. More...
|
|
virtual | ~class_decl () |
| Destructor of the class_decl type. More...
|
|
void | add_base_specifier (shared_ptr< base_spec > b) |
| Add a base specifier to this class. More...
|
|
class_decl_sptr | find_base_class (const string &qualified_name) const |
| Find a base class of a given qualified name for the current class. More...
|
|
const base_specs & | get_base_specifiers () const |
| Get the base specifiers for this class. More...
|
|
ssize_t | get_biggest_vtable_offset () const |
| Get the highest vtable offset of all the virtual methods of the class. More...
|
|
virtual string | get_pretty_representation (bool internal=false, bool qualified_name=true) const |
| Getter of the pretty representation of the current instance of class_decl. More...
|
|
const member_functions & | get_virtual_mem_fns () const |
| Get the virtual member functions of this class. More...
|
|
const virtual_mem_fn_map_type & | get_virtual_mem_fns_map () const |
| Get the map that associates a virtual table offset to the virtual member functions with that virtual table offset. More...
|
|
bool | has_no_base_nor_member () const |
| Return true iff the class has no entity in its scope. More...
|
|
bool | has_virtual_bases () const |
| Test if the current instance of class_decl has at least one virtual base. More...
|
|
bool | has_virtual_member_functions () const |
| Test if the current instance of class_decl has virtual member functions. More...
|
|
bool | has_vtable () const |
| Test if the current instance has a vtable. More...
|
|
virtual hash_t | hash_value () const |
| Return the hash value of the current IR node. More...
|
|
bool | is_struct () const |
| Test if the class is a struct. More...
|
|
void | is_struct (bool f) |
| Set the "is-struct" flag of the class. More...
|
|
virtual bool | operator== (const class_decl &) const |
| Comparison operator for class_decl. More...
|
|
virtual bool | operator== (const class_or_union &) const |
| Equality operator for class_decl. More...
|
|
virtual bool | operator== (const decl_base &) const |
| Comparison operator for class_decl. More...
|
|
virtual bool | operator== (const type_base &) const |
| Equality operator for class_decl. More...
|
|
void | sort_virtual_mem_fns () |
| Sort the virtual member functions by their virtual index. 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 members 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...
|
|
const data_members & | get_static_data_members () const |
| Get the static data memebers of this class_or_union. More...
|
|
bool | has_no_member () const |
|
virtual hash_t | hash_value () const |
| Return the hash value of the current IR node. More...
|
|
virtual bool | operator== (const class_or_union &) const |
| Equality operator. More...
|
|
virtual bool | operator== (const decl_base &) const |
| Equality operator. More...
|
|
virtual bool | operator== (const type_base &) const |
| Equality operator. More...
|
|
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...
|
|
virtual bool | traverse (ir_node_visitor &v) |
| This implements the ir_traversable_base::traverse pure virtual function. 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...
|
|
virtual bool | operator== (const decl_base &) const |
| Equality operator between two scope_type_decl. More...
|
|
virtual bool | operator== (const type_base &) const |
| Equality operator between two scope_type_decl. More...
|
|
virtual bool | traverse (ir_node_visitor &) |
| Traverses an instance of scope_type_decl, visiting all the sub-types and decls that it might contain. 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...
|
|
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...
|
|
virtual size_t | get_num_anonymous_member_classes () const |
| Getter for the number of anonymous classes contained in this scope. More...
|
|
virtual size_t | get_num_anonymous_member_enums () const |
| Getter for the number of anonymous enums contained in this scope. More...
|
|
virtual size_t | get_num_anonymous_member_unions () const |
| Getter for the number of anonymous unions contained in this scope. 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...
|
|
virtual bool | operator== (const decl_base &) const |
| Return true iff both scopes have the same names and have the same member decls. More...
|
|
void | remove_member_type (type_base_sptr t) |
| Remove a member type from the current class_or_union scope. More...
|
|
virtual bool | traverse (ir_node_visitor &) |
| This implements the ir_traversable_base::traverse pure virtual function. 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 interned_string & | get_cached_pretty_representation (bool internal=false) const |
| Get the pretty representation of the current 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 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...
|
|
virtual 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...
|
|
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...
|
|
virtual bool | operator== (const decl_base &) const |
| Return true iff the two decls have the same name. 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...
|
|
virtual 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...
|
|
virtual bool | traverse (ir_node_visitor &v) |
| This implements the ir_traversable_base::traverse pure virtual function. 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...
|
|
virtual string | get_pretty_representation (bool internal=false, bool qualified_name=true) const =0 |
|
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...
|
|
enum type_or_decl_kind | kind () const |
| Getter for the "kind" property of type_or_decl_base type. 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 bool | traverse (ir_node_visitor &) |
| Traverse the the ABI artifact. More...
|
|
virtual bool | traverse (ir_node_visitor &v) |
| Traverse a given IR node and its children, calling an visitor on each node. 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...
|
|
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 hash_t | hash_value () const |
| Return the hash value of the current IR node. More...
|
|
virtual bool | operator!= (const type_base &) const |
| Inequality operator. More...
|
|
virtual bool | operator== (const type_base &) const |
| Return true iff both type declarations are equal. 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...
|
|
virtual bool | traverse (ir_node_visitor &) |
| Default implementation of traversal for types. This function does nothing. It must be implemented by every single new type that is written. More...
|
|