libabigail
Public Member Functions | Public Attributes | List of all members
corpus::priv Struct Reference

The private data of the corpus type. More...

#include <abg-corpus-priv.h>

Public Member Functions

 priv (const string &p, const environment &e)
 
 ~priv ()
 Destructor of the corpus::priv type. More...
 
const string_elf_symbols_map_typeget_fun_symbol_map () const
 Return a map from name to function symbol for this corpus. More...
 
unordered_set< interned_string, hash_interned_string > * get_public_types_pretty_representations ()
 Getter of the set of pretty representation of types that are reachable from public interfaces (global functions and variables). More...
 
const elf_symbolsget_sorted_fun_symbols () const
 Return a sorted vector of function symbols for this corpus. More...
 
const elf_symbolsget_sorted_undefined_fun_symbols () const
 Getter for a sorted vector of the function symbols undefined in this corpus. More...
 
const elf_symbolsget_sorted_undefined_var_symbols () const
 Getter for a sorted vector of the variable symbols undefined in this corpus. More...
 
const elf_symbolsget_sorted_var_symbols () const
 Getter for the sorted vector of variable symbols for this corpus. More...
 
type_mapsget_types ()
 Get the maps that associate a name to a certain kind of type. More...
 
const type_mapsget_types () const
 Get the maps that associate a name to a certain kind of type. More...
 
const string_elf_symbols_map_typeget_undefined_fun_symbol_map () const
 Return a map from name to undefined function symbol for this corpus. More...
 
const string_elf_symbols_map_typeget_undefined_var_symbol_map () const
 Return a map from name to undefined variable symbol for this corpus. More...
 
const elf_symbolsget_unreferenced_function_symbols () const
 Return a list of symbols that are not referenced by any function of corpus::get_functions(). More...
 
const elf_symbolsget_unreferenced_variable_symbols () const
 Return a list of symbols that are not referenced by any variable of corpus::get_variables(). More...
 
const string_elf_symbols_map_typeget_var_symbol_map () const
 Return a map from name to variable symbol for this corpus. More...
 

Public Attributes

string architecture_name
 
unordered_map< string, type_base_sptr > canonical_types_
 
bool do_log
 
const environmentenv
 
corpus::exported_decls_builder_sptr exported_decls_builder
 
vector< function_decl * > fns
 
string format_major_version_number_
 
string format_minor_version_number_
 
corpus_groupgroup
 
translation_units members
 
vector< string > needed
 
corpus::origin origin_
 
string path
 
string_tu_map_type path_tu_map
 
unordered_set< interned_string, hash_interned_string > * pub_type_pretty_reprs_
 
vector< string > regex_patterns_fns_to_keep
 
vector< string > regex_patterns_fns_to_suppress
 
vector< string > regex_patterns_vars_to_keep
 
vector< string > regex_patterns_vars_to_suppress
 
string soname
 
vector< string > sym_id_fns_to_keep
 
vector< string > sym_id_vars_to_keep
 
symtab_reader::symtab_sptr symtab_
 
type_maps type_per_loc_map_
 
type_maps types_
 
vector< type_base_wptrtypes_not_reachable_from_pub_ifaces_
 
vector< var_decl * > vars
 

Detailed Description

The private data of the corpus type.

Definition at line 711 of file abg-corpus-priv.h.

Constructor & Destructor Documentation

~priv ( )

Destructor of the corpus::priv type.

Definition at line 634 of file abg-corpus.cc.

Member Function Documentation

const string_elf_symbols_map_type & get_fun_symbol_map ( ) const

Return a map from name to function symbol for this corpus.

Note that the first time this function is called, the map is built. Subsequent invocations of this function return the cached map that was built previously.

Returns
the name function symbol map

Definition at line 360 of file abg-corpus.cc.

unordered_set< interned_string, hash_interned_string > * get_public_types_pretty_representations ( )

Getter of the set of pretty representation of types that are reachable from public interfaces (global functions and variables).

Returns
the set of pretty representation of types that are reachable from public interfaces (global functions and variables).

Definition at line 622 of file abg-corpus.cc.

const elf_symbols & get_sorted_fun_symbols ( ) const

Return a sorted vector of function symbols for this corpus.

Note that the first time this function is called, the symbols are sorted and cached. Subsequent invocations of this function return the cached vector that was built previously.

Returns
the sorted list of function symbols.

Definition at line 335 of file abg-corpus.cc.

const elf_symbols & get_sorted_undefined_fun_symbols ( ) const

Getter for a sorted vector of the function symbols undefined in this corpus.

Returns
a vector of the function symbols undefined in this corpus, sorted by name and then version.

Definition at line 377 of file abg-corpus.cc.

const elf_symbols & get_sorted_undefined_var_symbols ( ) const

Getter for a sorted vector of the variable symbols undefined in this corpus.

Returns
a vector of the variable symbols undefined in this corpus, sorted by name and then version.

Definition at line 522 of file abg-corpus.cc.

const elf_symbols & get_sorted_var_symbols ( ) const

Getter for the sorted vector of variable symbols for this corpus.

Note that the first time this function is called, it computes the sorted vector, caches the result and returns it. Subsequent invocations of this function just return the cached vector.

Returns
the sorted vector of variable symbols for this corpus.

Definition at line 479 of file abg-corpus.cc.

type_maps & get_types ( )

Get the maps that associate a name to a certain kind of type.

Definition at line 319 of file abg-corpus.cc.

const type_maps & get_types ( ) const

Get the maps that associate a name to a certain kind of type.

Definition at line 324 of file abg-corpus.cc.

const string_elf_symbols_map_type & get_undefined_fun_symbol_map ( ) const

Return a map from name to undefined function symbol for this corpus.

Note that the first time this function is called, the map is built. Subsequent invocations of this function return the cached map that was built previously.

Returns
the name function symbol map for undefined symbols

Definition at line 405 of file abg-corpus.cc.

const string_elf_symbols_map_type & get_undefined_var_symbol_map ( ) const

Return a map from name to undefined variable symbol for this corpus.

Note that the first time this function is called, the map is built. Subsequent invocations of this function return the cached map that was built previously.

Returns
the name undefined variable symbol map

Definition at line 550 of file abg-corpus.cc.

const elf_symbols & get_unreferenced_function_symbols ( ) const

Return a list of symbols that are not referenced by any function of corpus::get_functions().

Note that this function considers the list of function symbols to keep, that is provided by corpus::get_sym_ids_of_fns_to_keep(). If a given unreferenced function symbol is not in the list of functions to keep, then that symbol is dropped and will not be part of the resulting table of unreferenced symbol that is built.

Returns
list of symbols that are not referenced by any function

Definition at line 427 of file abg-corpus.cc.

const elf_symbols & get_unreferenced_variable_symbols ( ) const

Return a list of symbols that are not referenced by any variable of corpus::get_variables().

Note that this function considers the list of variable symbols to keep, that is provided by corpus::get_sym_ids_of_vars_to_keep(). If a given unreferenced variable symbol is not in the list of variable to keep, then that symbol is dropped and will not be part of the resulting table of unreferenced symbol that is built.

Returns
list of symbols that are not referenced by any variable

Definition at line 572 of file abg-corpus.cc.

const string_elf_symbols_map_type & get_var_symbol_map ( ) const

Return a map from name to variable symbol for this corpus.

Note that the first time this function is called, the map is built. Subsequent invocations of this function return the cached map that was built previously.

Returns
the name variable symbol map

Definition at line 505 of file abg-corpus.cc.


The documentation for this struct was generated from the following files: