libabigail
Loading...
Searching...
No Matches
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
 Coptional< T >Simplified implementation of std::optional just enough to be used as a replacement for our purposes and when compiling with pre C++17
 Cvector
 Cd_path_vecThe array containing the furthest D-path end-points, for each value of K. MAX_D is the maximum value of the D-Path. That is, M+N if M is the size of the first input string, and N is the size of the second
 Ccanvas
 Carray_diff::priv
 Cbase_diff::priv
 Cbase_diff_compA comparison function for instances of base_diff
 Cbase_spec_compA functor to compare instances of base_spec
 Cchanged_enumerator_compA functor to compare two changed enumerators, based on their initial value
 Cclass_diff::privThe type of the private data (pimpl sub-object) of the class_diff type
 Cclass_or_union_diff::privThe type of private data of class_or_union_diff
 Ccorpus_diffAn abstraction of a diff between between two abi corpus
 Ccorpus_diff::diff_statsThis is a document class that aims to capture statistics about the changes carried by a corpus_diff type
 Ccorpus_diff::diff_stats::privThe type of the private data of corpus_diff::diff_stats
 Ccorpus_diff::priv
 Cdata_member_compA comparison functor to compare two data members based on their offset
 Cdata_member_diff_compA comparison functor to compare two instances of var_diff that represent changed data members based on the offset of the initial data members, or if equal, based on their qualified name. If equal again, then the offset and qualified name of the new data members are considered
 Cdecl_diff_base::priv
 CdeletionThe abstraction of the deletion of one element of a sequence A
 CprivPrivate data for the diff type. The details of generic view of the diff node are expressed here
 Cdiff_compA comparison functor for instances of diff
 Cdiff_contextThe context of the diff. This type holds various bits of information that is going to be used throughout the diffing of two entities and the reporting that follows
 Cdiff_context::privThe private member (pimpl) for diff_context
 Cdiff_equalA comparison functor for using diff_sptr and diff* in a hash map or set
 Cdiff_hashA hashing functor for using diff_sptr and diff* in a hash map or set
 Cdiff_less_than_functorA functor to compare two instances of diff_sptr
 Cdiff_mapsThis type contains maps. Each map associates a type name to a diff of that type. Not all kinds of diffs are present; only those that carry leaf changes are, for now
 Cdiff_sptr_hasherHasher for diff_sptr
 Cdistinct_diff::privThe private data structure for distinct_diff
 Cedit_scriptThe abstraction of an edit script for transforming a sequence A into a sequence B
 Celf_symbol_compA functor to compare instances of elf_symbol base on their names
 Cenum_diff::priv
 Cenumerator_value_compA functor to compare two enumerators based on their value. This implements the "less than" operator
 Cfn_parm_diff::priv
 Cfn_parm_diff_compA comparison functor to compare two instances of fn_parm_diff based on their indexes
 Cfunction_comp"Less than" functor to compare instances of function_decl
 Cfunction_decl_diff::priv
 Cfunction_decl_diff_compA "Less Than" functor to compare instance of function_decl_diff
 Cfunction_type_diff::priv
 CinsertionThe abstration of an insertion of elements of a sequence B into a sequence A. This is used to represent the edit script for transforming a sequence A into a sequence B
 Cnoop_deleterA deleter for shared pointers that ... doesn't delete the object managed by the shared pointer
 Cparm_compFunctor that compares two function parameters for the purpose of sorting them
 Cpointer_diff::privThe internal type for the impl idiom implementation of pointer_diff
 Cptr_to_mbr_diff::privThe private data of the ptr_to_mbr_diff type
 Cqualified_type_diff::priv
 Creference_diff::priv
 Creporter_baseThe base class of all the reporting classes
 Cdefault_reporterThe default, initial, reporter of the libabigail comparison engine
 Cleaf_reporterA reporter that only reports leaf changes
 Cscope_diff::priv
 Csubrange_diff::privThe internal type for the impl idiom implementation of subrange_diff
 Ctranslation_unit_diff::priv
 Ctype_diff_base::priv
 Ctypedef_diff::priv
 Ctypes_or_decls_equalAn equality functor for types_or_decls_type
 Ctypes_or_decls_hashA hashing functor for types_or_decls_type
 Cvar_compA functor to compare instances of var_decl base on their qualified names
 Cvar_diff::privThe internal type for the impl idiom implementation of var_diff
 Cvar_diff_sptr_compFunctor to sort instances of var_diff_sptr
 Cvector
 Cd_path_vecThe array containing the furthest D-path end-points, for each value of K. MAX_D is the maximum value of the D-Path. That is, M+N if M is the size of the first input string, and N is the size of the second
 Cvirtual_member_function_diff_compA comparison functor for instances of function_decl_diff that represent changes between two virtual member functions
 CconfigThis type abstracts the configuration information of the library
 Cdeep_ptr_eq_functorAn equality functor to deeply compare pointers
 Cdefault_eq_functorThe default equality functor used by the core diffing algorithms
 CdeletionThe abstraction of the deletion of one element of a sequence A
 Cedit_scriptThe abstraction of an edit script for transforming a sequence A into a sequence B
 CinsertionThe abstration of an insertion of elements of a sequence B into a sequence A. This is used to represent the edit script for transforming a sequence A into a sequence B
 CpointA class representing a vertex in an edit graph, as explained in the paper. A vertex is a basically a pair of coordinates (abscissa and ordinate)
 CsnakeThe abstraction of the Snake concept, from the paper
 Cvector
 Cd_path_vecThe array containing the furthest D-path end-points, for each value of K. MAX_D is the maximum value of the D-Path. That is, M+N if M is the size of the first input string, and N is the size of the second
 Cdot
 Coptional< T >Simplified implementation of std::optional just enough to be used as a replacement for our purposes and when compiling with pre C++17
 Cdwfl_deleterA functor used by dwfl_sptr
 Cfe_ifaceThe base class of all libabigail front-ends: The Front End Interface
 CreaderThis is the interface an ELF reader
 Celf_based_readerThe common interface of readers based on ELF
 Cfe_iface::options_typeThe generic options that control the behaviour of all Front-End interfaces
 Cfunction_decl::ptr_equalEquality functor for instances of function_decl
 Chash_interned_stringA functor to hash instances of interned_string
 CconfigThe abstraction of the structured content of an .ini file. This roughly follows what is explained at http://en.wikipedia.org/wiki/INI_file
 Cconfig::sectionThe abstraction of one section of the .ini config
 Cfunction_call_exprThe abstraction of a function call expression
 CpropertyThe base class of the different kinds of properties of an INI file
 Clist_propertyA class representing a list property
 Csimple_propertyA simple property. That is, one which value is a string_property_value
 Ctuple_propertyAbstraction of a tuple property. A tuple property is a property which value is a tuple_property_value
 Cproperty_valueBase class of propertie values
 Clist_property_valueAbstracts the value of a property representing a list of strings
 Cstring_property_valueA property value which is a string
 Ctuple_property_valueA property value that is a tuple
 Cvector
 Cd_path_vecThe array containing the furthest D-path end-points, for each value of K. MAX_D is the maximum value of the D-Path. That is, M+N if M is the size of the first input string, and N is the size of the second
 Cinterned_stringThe abstraction of an interned string
 Cinterned_string_poolThe interned string pool
 Carray_type_def::hashHash functor for instances of hash
 Carray_type_def::subrange_type::bound_valueThis class is to hold the value of the bound of a subrange. The value can be either signed or unsigned, at least when it comes from DWARF. The class keeps the sign information, but allows users to access the value as signed or unsigned as they see fit
 Carray_type_def::subrange_type::hashHash functor for instances of subrange_type
 Ccanonical_type_hashFunctor to hash a canonical type by using its pointer value
 Cclass_decl::base_spec::hashThe hashing functor for class_decl::base_spec
 Cclass_decl::hashHasher for the class_decl type
 Cclass_or_union::hashHasher for the class_or_union type
 Cclass_or_union::priv
 Ccontext_relThe abstraction of the relationship between an entity and its containing scope (its context). That relationship can carry properties like access rights (if the parent is a class_decl), etc
 Cdm_context_relThe abstraction for a data member context relationship. This relates a data member to its parent class
 Cmem_fn_context_relAbstraction of a member function context relationship. This relates a member function to its parent class
 CcorpusThis is the abstraction of a set of translation units (themselves seen as bundles of unitary abi artefacts like types and decls) bundled together as a corpus. A corpus is thus the Application binary interface of a program, a library or just a set of modules put together
 Ccorpus_groupAbstraction of a group of corpora
 Ccorpus::exported_decls_builderAbstracts the building of the set of exported variables and functions
 Ccorpus::exported_decls_builder::privThe type of the private data of exported_decls_builder type
 Ccorpus::privThe private data of the corpus type
 Cdecl_base::hash
 Cdecl_topo_compA functor to sort decls somewhat topologically. That is, types are sorted in a way that makes the ones that are defined "first" to come first
 Celf_symbolAbstraction of an elf symbol
 Celf_symbol::versionThe abstraction of the version of an ELF symbol
 Cenum_type_decl::enumeratorThe abstraction of an enumerator
 Cenum_type_decl::hashHash functor for instances of enum_type_decl
 CenvironmentThis is an abstraction of the set of resources necessary to manage several aspects of the internal representations of the Abigail library
 Cenvironment::privThe private data of the environment type
 Cfunction_decl::ptr_equalEquality functor for instances of function_decl
 Cfunction_type::hashThe hashing functor for function_type
 Cfunction_type::privThe type of the private data of the function_type type
 ClocationThe source location of a token
 Clocation_managerThe entry point to manage locations
 Cmember_baseThe base class for member types, data members and member functions. Its purpose is mainly to carry the access specifier (and possibly other properties that might be shared by all class members) for the member
 Cclass_decl::base_specAbstraction of a base specifier in a class declaration
 Cmember_class_templateAbstracts a member class template template
 Cmember_function_templateAbstract a member function template
 Cmember_base::hashThe hashing functor for member_base
 Cmethod_type::hashHashing functor for the method_type type
 Cnode_visitor_baseThe base class for the visitor type hierarchy used for traversing a hierarchy of nodes
 Cdiff_node_visitorThe base class for the node visitors. These are the types used to visit each node traversed by the diff_traversable_base::traverse() method
 Cfilter_baseThe base class for the diff tree node filter
 Charmless_filterA filter that walks the diff nodes tree and tags relevant diff nodes into categories considered to represent harmless changes
 Charmless_harmful_filterA filter that walks the diff nodes tree and tags relevant diff nodes into categories considered to represent potentially harmless or harmful changes
 Cir_node_visitorThe base class for the visitor type hierarchy used for traversing a translation unit
 Coptional< T >Simplified implementation of std::optional just enough to be used as a replacement for our purposes and when compiling with pre C++17
 Cpointer_type_def::hashHash functor for instances of pointer_type_def
 Cptr_to_mbr_type::hashHash functor for instances of ptr_to_mbr_type
 Cqualified_type_def::hashHash functor for instances of qualified_type_def
 Creal_typeThe internal representation of an integral type
 Creference_type_def::hashHash functor for instances of reference_type_def
 Cshared_translation_unit_compA comparison functor to compare translation units based on their absolute paths
 Csort_for_hash_functorFunctor used to sort types before hashing them
 Ctemplate_parameterBase class for a template parameter. Client code should use the more specialized type_template_parameter, non_type_template_parameter and template_template_parameter below
 Cnon_type_tparameterAbstracts non type template parameters
 Ctype_compositionThis abstracts a composition of types based on template type parameters. The result of the composition is a type that can be referred to by a template non-type parameter. Instances of this type can appear at the same level as template parameters, in the scope of a template_decl
 Ctype_tparameterAbstracts a type template parameter
 Ctemplate_tparameterAbstracts a template template parameter
 Ctranslation_unit::privPrivate type to hold private members of translation_unit
 Ctraversable_baseThe interface for types which are feeling social and want to be visited during the traversal of a hierarchy of nodes
 Cdiff_traversable_baseThe base class for the diff classes that are to be traversed
 CdiffThe abstraction of a change between two ABI artifacts, a.k.a an artifact change
 Cbase_diffAn abstraction of a diff between two instances of class_decl::base_spec
 Cdecl_diff_baseThe base class of diff between decls
 Cfn_parm_diffAbstraction of a diff between two function parameters
 Cfunction_decl_diffAbstraction of a diff between two function_decl
 Cvar_diffAbstracts a diff between two instances of var_decl
 Cdistinct_diffAn abstraction of a diff between entities that are of a different kind (disctinct)
 Cscope_diffAn abstractions of the changes between two scopes
 Ctranslation_unit_diffAn abstraction of a diff between two translation units
 Ctype_diff_baseThe base class of diff between types
 Carray_diffThe abstraction of a diff between two arrays
 Cclass_or_union_diffThis is the base class of class_diff and union_diff
 Cclass_diffThis type abstracts changes for a class_decl
 Cunion_diff
 Cenum_diffAbstraction of a diff between two enums
 Cfunction_type_diffAbstraction of a diff between two function types
 Cpointer_diffThe abstraction of a diff between two pointers
 Cptr_to_mbr_diffThe abstraction of a diff between two ptr_to_mbr_type
 Cqualified_type_diffAbstraction of a diff between two qualified types
 Creference_diffThe abstraction of a diff between two references
 Csubrange_diffThe abstraction of the diff between two subrange types
 Ctype_decl_diffAbstraction of a diff between two basic type declarations
 Ctypedef_diffAbstraction of a diff between two typedef_decl
 Cir_traversable_baseThe base of an entity of the intermediate representation that is to be traversed
 Ctype_or_decl_baseThe base class of both types and declarations
 Cdecl_baseThe base type of all declarations
 Carray_type_defThe abstraction of an array type
 Carray_type_def::subrange_typeAbstraction for an array range type, like in Ada, or just for an array dimension like in C or C++
 Cclass_decl::base_specAbstraction of a base specifier in a class declaration
 Cenum_type_declAbstracts a declaration for an enum type
 Cfunction_declAbstraction for a function declaration
 Cmethod_declAbstraction of the declaration of a method
 Cfunction_decl::parameterAbstraction of a function parameter
 Cmember_class_templateAbstracts a member class template template
 Cmember_function_templateAbstract a member function template
 Cnon_type_tparameterAbstracts non type template parameters
 Cpointer_type_defThe abstraction of a pointer type
 Cptr_to_mbr_typeThe abstraction of a pointer-to-member type
 Cqualified_type_defThe abstraction of a qualified type
 Creference_type_defAbstracts a reference type
 Cscope_declA declaration that introduces a scope
 Cclass_tdeclAbstract a class template
 Cfunction_tdeclAbstract a function template declaration
 Cglobal_scopeThis abstracts the global scope of a given translation unit
 Cnamespace_declThe abstraction of a namespace declaration
 Cscope_type_declA type that introduces a scope
 Cclass_or_unionThe base type of class_decl and union_decl
 Cclass_declAbstracts a class declaration
 Cunion_declAbstracts a union type declaration
 Ctemplate_declThe base class of templates
 Cclass_tdeclAbstract a class template
 Cfunction_tdeclAbstract a function template declaration
 Ctemplate_tparameterAbstracts a template template parameter
 Ctype_compositionThis abstracts a composition of types based on template type parameters. The result of the composition is a type that can be referred to by a template non-type parameter. Instances of this type can appear at the same level as template parameters, in the scope of a template_decl
 Ctype_declA basic type declaration that introduces no scope
 Ctype_tparameterAbstracts a type template parameter
 Ctypedef_declThe abstraction of a typedef declaration
 Cvar_declAbstracts a variable declaration
 Ctype_baseAn abstraction helper for type declarations
 Carray_type_defThe abstraction of an array type
 Carray_type_def::subrange_typeAbstraction for an array range type, like in Ada, or just for an array dimension like in C or C++
 Cenum_type_declAbstracts a declaration for an enum type
 Cfunction_typeAbstraction of a function type
 Cmethod_typeAbstracts the type of a class member function
 Cpointer_type_defThe abstraction of a pointer type
 Cptr_to_mbr_typeThe abstraction of a pointer-to-member type
 Cqualified_type_defThe abstraction of a qualified type
 Creference_type_defAbstracts a reference type
 Cscope_type_declA type that introduces a scope
 Ctype_declA basic type declaration that introduces no scope
 Ctypedef_declThe abstraction of a typedef declaration
 Ctranslation_unitThis is the abstraction of the set of relevant artefacts (types, variable declarations, functions, templates, etc) bundled together into a translation unit
 Ctype_base::hashHash functor for instances of type_base
 Ctype_base::privDefinition of the private data of type_base
 Ctype_decl::hashHash functor for instances of type_decl
 Ctype_mapsThis is a type that aggregates maps of all the kinds of types that are supported by libabigail
 Ctype_or_decl_base::privThe private data of type_or_decl_base
 Ctype_or_decl_base_compA comparison functor to compare pointer to instances of type_or_decl_base
 Ctype_or_decl_equalThe comparison functor for using instances of type_or_decl_base as values in a hash map or set
 Ctype_or_decl_hashThe hashing functor for using instances of type_or_decl_base as values in a hash map or set
 Ctype_ptr_equalA predicate for deep equality of instances of type_base*
 Ctype_shared_ptr_equalA predicate for deep equality of instances of shared_ptr<type_base>
 Ctype_topo_compA functor to sort types somewhat topologically. That is, types are sorted in a way that makes the ones that are defined "first" to come first
 Ctypedef_decl::hashHash functor for instances of typedef_decl
 Cuint64_t_pair_hashThe hashing functor for a pair of uint64_t
 Cunion_decl::hashHash functor for instances of union_decl type
 Cvar_decl::ptr_equalA comparison functor for pointers to var_decl
 Cvector
 Cd_path_vecThe array containing the furthest D-path end-points, for each value of K. MAX_D is the maximum value of the D-Path. That is, M+N if M is the size of the first input string, and N is the size of the second
 Cnode_baseBase class for graph nodes
 Cchild_node
 Cparent_node
 Cnoop_deleterA deleter for shared pointers that ... doesn't delete the object managed by the shared pointer
 CescapeA class to hold a reference to a string to regex escape
 Cregex_t_deleterA delete functor for a shared_ptr of regex_t
 Crow
 Cnoop_deleterA deleter for shared pointers that ... doesn't delete the object managed by the shared pointer
 CstyleDatum consolidating style preferences
 Cfunction_suppression::parameter_specAbstraction of the specification of a function parameter in a function suppression specification
 Cfunction_suppression::parameter_spec::priv
 Cfunction_suppression::privThe type of the private data of the function_suppression type
 Cnegated_suppression_baseThe base class of suppression specifications that are defined by the negation of matching clauses
 Cnegated_type_suppressionAbstraction of a negated type suppression specification
 Csuppression_baseBase type of a direct suppression specifications types
 Cfile_suppressionAbstraction of a suppression specification to avoid loading a file
 Cfunction_suppressionAbstraction of a function suppression specification
 Ctype_suppressionAbstraction of a type suppression specification
 Cnegated_type_suppressionAbstraction of a negated type suppression specification
 Cvariable_suppressionThe abstraction of a variable suppression specification
 Csuppression_base::privThe private data of suppression_base
 Ctype_suppression::insertion_rangeThe abstraction of a range of offsets in which a member of a type might get inserted
 Ctype_suppression::insertion_range::boundaryThe abstraction of the boundary of an insertion_range, in the context of a type_suppression
 Ctype_suppression::insertion_range::fn_call_expr_boundaryAn insertion_range boundary that is expressed as function call expression. The (integer) value of that expression is usually a bit offset
 Ctype_suppression::insertion_range::integer_boundaryAn insertion_range boundary that is expressed as an integer value. That integer value is usually a bit offset
 Ctype_suppression::insertion_range::named_boundaryAn insertion_range boundary that is expressed as a named constant that is to be evaluated later in the context of a given type and resolved to a bit offset
 Ctype_suppression::privThe private data for type_suppression
 Cvariable_suppression::privThe type of the private data of the variable_suppression type
 Cvector
 Cd_path_vecThe array containing the furthest D-path end-points, for each value of K. MAX_D is the maximum value of the D-Path. That is, M+N if M is the size of the first input string, and N is the size of the second
 Csvg
 Cfiltered_symtabHelper class to allow range-for loops on symtabs for C++11 and later code. It serves as a proxy for the symtab iterator and provides a begin() method without arguments, as required for range-for loops (and possibly other iterator based transformations)
 CsymtabSymtab is the actual data container of the symtab_reader implementation
 Csymtab_filterThe symtab filter is the object passed to the symtab object in order to iterate over the symbols in the symtab while applying filters
 CInOutSpecThis is an aggregate that specifies where a test shall get its input from, and where it shall write its output to
 CoptionsAn abstraction for valid test options
 Ctemp_fileA temporary file
 CtimerA type used to time various part of the libabigail system
 Ctypography
 Cvector
 Cd_path_vecThe array containing the furthest D-path end-points, for each value of K. MAX_D is the maximum value of the D-Path. That is, M+N if M is the size of the first input string, and N is the size of the second
 CqueueThis represents a queue of tasks to be performed
 Cqueue::task_done_notifyThis functor is to notify listeners that a given task scheduled for execution has been fully executed
 CtaskThis represents a task to be performed
 Ctest_taskThe task that performs the tests
 CcharDeleterThis functor is used to instantiate a shared_ptr for xmlChar
 CtextReaderDeleterThis functor is used to instantiate a shared_ptr for the xmlTextReader
 Cbase_iterator
 Csymtab_iteratorAn iterator to walk a vector of elf_symbols filtered by symtab_filter
 Cstreambuf
 Cxz_decompressor_typeThis is a custom std::streambuf that knows how to decompress an input stream that was compressed using xz
 Cvector
 Cd_path_vecThe array containing the furthest D-path end-points, for each value of K. MAX_D is the maximum value of the D-Path. That is, M+N if M is the size of the first input string, and N is the size of the second
 Celf_symbols
 Cstring_elf_symbols_map_type
 Cuint32_t