libabigail

The private data and functions of the abigail::ir::comparison types. More...
#include "abginternal.h"
#include <memory>
#include <unordered_set>
#include "abghash.h"
#include "abgsuppression.h"
#include "abgcomparison.h"
#include "abgcompfilter.h"
#include "abgsptrutils.h"
#include "abgtoolsutils.h"
Go to the source code of this file.
Classes  
struct  array_diff::priv 
struct  base_diff::priv 
struct  base_diff_comp 
A comparison function for instances of base_diff. More...  
struct  base_spec_comp 
A functor to compare instances of class_decl::base_spec. More...  
struct  changed_enumerator_comp 
A functor to compare two changed enumerators, based on their initial value. More...  
struct  class_diff::priv 
The type of the private data (pimpl subobject) of the class_diff type. More...  
struct  class_or_union_diff::priv 
The type of private data of class_or_union_diff. More...  
struct  corpus_diff::diff_stats::priv 
The type of the private data of corpus_diff::diff_stats. More...  
struct  corpus_diff::priv 
struct  data_member_comp 
A comparison functor to compare two data members based on their offset. More...  
struct  data_member_diff_comp 
A 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. More...  
struct  decl_diff_base::priv 
struct  priv 
Private data for the diff type. The details of generic view of the diff node are expressed here. More...  
struct  diff_comp 
A comparison functor for instances of diff. More...  
struct  diff_context::priv 
The private member (pimpl) for diff_context. More...  
struct  diff_equal 
A comparison functor for using diff_sptr and diff* in a hash map or set. More...  
struct  diff_hash 
A hashing functor for using diff_sptr and diff* in a hash map or set. More...  
struct  diff_less_than_functor 
A functor to compare two instances of diff_sptr. More...  
struct  distinct_diff::priv 
The private data structure for distinct_diff. More...  
struct  elf_symbol_comp 
A functor to compare instances of elf_symbol base on their names. More...  
struct  enum_diff::priv 
struct  enumerator_value_comp 
A functor to compare two enumerators based on their value. This implements the "less than" operator. More...  
struct  fn_parm_diff::priv 
struct  fn_parm_diff_comp 
A comparison functor to compare two instances of fn_parm_diff based on their indexes. More...  
struct  function_comp 
"Less than" functor to compare instances of function_decl. More...  
struct  function_decl_diff::priv 
struct  function_decl_diff_comp 
A "Less Than" functor to compare instance of function_decl_diff. More...  
struct  function_type_diff::priv 
struct  parm_comp 
Functor that compares two function parameters for the purpose of sorting them. More...  
struct  pointer_diff::priv 
The internal type for the impl idiom implementation of pointer_diff. More...  
struct  ptr_to_mbr_diff::priv 
The private data of the ptr_to_mbr_diff type. More...  
struct  qualified_type_diff::priv 
struct  reference_diff::priv 
struct  scope_diff::priv 
struct  subrange_diff::priv 
The internal type for the impl idiom implementation of subrange_diff. More...  
struct  translation_unit_diff::priv 
struct  type_diff_base::priv 
struct  typedef_diff::priv 
struct  types_or_decls_equal 
An equality functor for types_or_decls_type. More...  
struct  types_or_decls_hash 
A hashing functor for types_or_decls_type. More...  
struct  var_comp 
A functor to compare instances of var_decl base on their qualified names. More...  
struct  var_diff::priv 
The internal type for the impl idiom implementation of var_diff. More...  
struct  var_diff_sptr_comp 
Functor to sort instances of var_diff_sptr. More...  
struct  virtual_member_function_diff_comp 
A comparison functor for instances of function_decl_diff that represent changes between two virtual member functions. More...  
Namespaces  
namespace  abigail 
Toplevel namespace for libabigail.  
namespace  abigail::comparison 
utilities to compare abi artifacts  
Typedefs  
typedef unordered_map< const diff *, artifact_sptr_set_type, diff_hash, diff_equal >  diff_artifact_set_map_type 
A convenience typedef for an unordered_map which key is a diff* and which value is a artifact_sptr_set_type.  
typedef unordered_map< types_or_decls_type, diff_sptr, types_or_decls_hash, types_or_decls_equal >  types_or_decls_diff_map_type 
A convenience typedef for a map of types_or_decls_type and diff_sptr.  
typedef std::pair< const type_or_decl_base_sptr, const type_or_decl_base_sptr >  types_or_decls_type 
Convenience typedef for a pair of decls or types.  
Functions  
diff *  get_fn_decl_or_var_decl_diff_ancestor (const diff *) 
type_base_sptr  get_leaf_type (qualified_type_def_sptr t) 
Return the first underlying type that is not a qualified type.  
bool  is_diff_of_global_decls (const diff *d) 
Tests if a given diff node is to represent the changes between two gobal decls.  
bool  is_less_than (const function_decl_diff &first, const function_decl_diff &second) 
Compare two function_decl_diff for the purpose of sorting.  
void  sort_artifacts_set (const artifact_sptr_set_type &set, vector< type_or_decl_base_sptr > &sorted) 
Sort the set of ABI artifacts contained in a artifact_sptr_set_type.  
void  sort_changed_data_members (changed_var_sptrs_type &to_sort) 
Sort (in place) a vector of changed data members.  
void  sort_changed_enumerators (const string_changed_enumerator_map &enumerators_map, changed_enumerators_type &sorted) 
Sort a map of changed enumerators.  
void  sort_data_members (const string_decl_base_sptr_map &data_members, vector< decl_base_sptr > &sorted) 
Sort a map of data members by the offset of their initial value.  
void  sort_enumerators (const string_enumerator_map &enumerators_map, enum_type_decl::enumerators &sorted) 
Sort a map of enumerators by their value.  
void  sort_string_base_diff_sptr_map (const string_base_diff_sptr_map &map, base_diff_sptrs_type &sorted) 
Sort a map of string > base_diff_sptr into a sorted vector of base_diff_sptr. The base_diff_sptr are sorted by increasing value of their offset in their containing type.  
void  sort_string_base_sptr_map (const string_base_sptr_map &m, class_decl::base_specs &sorted) 
Lexicographically sort base specifications found in instances of string_base_sptr_map.  
void  sort_string_data_member_diff_sptr_map (const string_var_diff_sptr_map &map, var_diff_sptrs_type &sorted) 
Sort the values of a string_var_diff_sptr_map and store the result in a vector of var_diff_sptr.  
void  sort_string_diff_ptr_map (const string_diff_ptr_map &map, diff_ptrs_type &sorted) 
Sort a map ofg string > diff* into a vector of diff_ptr. The diff_ptr are sorted lexicographically wrt qualified names of their first subjects.  
void  sort_string_diff_sptr_map (const string_diff_sptr_map &map, diff_sptrs_type &sorted) 
Sort a map ofg string > diff_sptr into a vector of diff_sptr. The diff_sptr are sorted lexicographically wrt qualified names of their first subjects.  
void  sort_string_elf_symbol_map (const string_elf_symbol_map &map, vector< elf_symbol_sptr > &sorted) 
Sort a map of string > pointer to elf_symbol.  
void  sort_string_fn_parm_diff_sptr_map (const string_fn_parm_diff_sptr_map &map, vector< fn_parm_diff_sptr > &sorted) 
Sort a map of changed function parameters by the indexes of the function parameters.  
void  sort_string_fn_parm_diff_sptr_map (const unsigned_fn_parm_diff_sptr_map &map, vector< fn_parm_diff_sptr > &sorted) 
Sort a map of fn_parm_diff by the indexes of the function parameters.  
void  sort_string_function_decl_diff_sptr_map (const string_function_decl_diff_sptr_map &map, function_decl_diff_sptrs_type &sorted) 
Sort the values of a string_function_decl_diff_sptr_map map and store the result in a vector of function_decl_diff_sptr objects.  
void  sort_string_function_ptr_map (const string_function_ptr_map &map, vector< const function_decl * > &sorted) 
Sort an instance of string_function_ptr_map map and stuff a resulting sorted vector of pointers to function_decl.  
void  sort_string_member_function_sptr_map (const string_member_function_sptr_map &map, class_or_union::member_functions &sorted) 
Sort a map that's an instance of string_member_function_sptr_map and fill a vector of member functions with the sorted result.  
void  sort_string_parm_map (const string_parm_map &map, vector< function_decl::parameter_sptr > &sorted) 
Sort a map of string > function parameters.  
void  sort_string_type_base_sptr_map (string_type_base_sptr_map &map, vector< type_base_sptr > &sorted) 
Sort a map of string to type_base_sptr entities.  
void  sort_string_var_diff_sptr_map (const string_var_diff_sptr_map &map, var_diff_sptrs_type &sorted) 
Sort of an instance of string_var_diff_sptr_map map.  
void  sort_string_var_ptr_map (const string_var_ptr_map &map, vector< var_decl_sptr > &sorted) 
Sort a map of string > pointer to var_decl.  
void  sort_string_virtual_member_function_diff_sptr_map (const string_function_decl_diff_sptr_map &map, function_decl_diff_sptrs_type &sorted) 
Sort an map of string > virtual member function into a vector of virtual member functions. The virtual member functions are sorted by increasing order of their virtual index.  
void  sort_unsigned_data_member_diff_sptr_map (const unsigned_var_diff_sptr_map map, var_diff_sptrs_type &sorted) 
Sort the values of a unsigned_var_diff_sptr_map map and store the result into a vector of var_diff_sptr.  
The private data and functions of the abigail::ir::comparison types.
Interfaces declared/defined in this file are to be used by parts of libabigail but *NOT* by clients of libabigail.
Definition in file abgcomparisonpriv.h.