libabigail
|
Abstraction of a negated type suppression specification. More...
#include <abg-suppression.h>
Public Member Functions | |
negated_type_suppression (const string &label, const string &type_name_regexp, const string &type_name) | |
Constructor for negated_type_suppression. More... | |
virtual | ~negated_type_suppression () |
Destructor of the negated_type_suppression type. More... | |
virtual bool | suppresses_diff (const diff *diff) const |
Evaluate this suppression specification on a given diff node and say if the diff node should be suppressed or not. More... | |
bool | suppresses_type (const type_base_sptr &type) const |
bool | suppresses_type (const type_base_sptr &type, const diff_context_sptr &ctxt) const |
bool | suppresses_type (const type_base_sptr &type, const scope_decl *type_scope) const |
![]() | |
type_suppression (const string &label, const string &type_name_regexp, const string &type_name) | |
Constructor for type_suppression. More... | |
const vector< string > & | get_changed_enumerator_names () const |
Getter of the vector of the changed enumerators that are supposed to be suppressed. Note that this will be "valid" only if the type suppression has the 'type_kind = enum' property. More... | |
bool | get_consider_reach_kind () const |
Test if the current type suppression specification suggests to consider how the matching diff node is reached. More... | |
bool | get_consider_type_kind () const |
Getter of the property that says whether to consider the kind of type this suppression is about. More... | |
insertion_ranges & | get_data_member_insertion_ranges () |
Getter for the vector of data member insertion range that specifiers where a data member is inserted as far as this suppression specification is concerned. More... | |
const insertion_ranges & | get_data_member_insertion_ranges () const |
Getter for the vector of data member insertion range that specifiers where a data member is inserted as far as this suppression specification is concerned. More... | |
bool | get_has_size_change () const |
Getter of the "has_size_change" property. More... | |
const string_set_type & | get_potential_data_member_names () const |
Getter of the "potential_data_member_names" property. More... | |
const string & | get_potential_data_member_names_regex_str () const |
Getter of the "potential_data_member_names_regex" string. More... | |
reach_kind | get_reach_kind () const |
Getter of the way the diff node matching the current suppression specification is to be reached. More... | |
const string & | get_source_location_to_keep_regex_str () const |
Getter of the regular expression string that designates the source location paths of types that should not be suppressed. More... | |
unordered_set< string > & | get_source_locations_to_keep () |
Getter for the array of source location paths of types that should *NOT* be suppressed. More... | |
const unordered_set< string > & | get_source_locations_to_keep () const |
Getter for the array of source location paths of types that should *NOT* be suppressed. More... | |
type_kind | get_type_kind () const |
Getter of the kind of type this suppression is about. More... | |
const string & | get_type_name () const |
Getter for the name of the type about which diff reports should be suppressed. More... | |
const string & | get_type_name_not_regex_str () const |
Getter for the "type_name_not_regex_str" property of the type suppression specification. More... | |
const string & | get_type_name_regex_str () const |
Getter for the "type_name_regex" property of the type suppression specification. More... | |
void | set_changed_enumerator_names (const vector< string > &) |
Setter of the vector of changed enumerators that are supposed to be suppressed. Note that this will be "valid" only if the type suppression has the 'type_kind = enum' property. More... | |
void | set_consider_reach_kind (bool f) |
Set a flag saying if the current type suppression specification suggests to consider how the matching diff node is reached. More... | |
void | set_consider_type_kind (bool f) |
Setter of the property that says whether to consider the kind of type this suppression is about. More... | |
void | set_data_member_insertion_ranges (const insertion_ranges &r) |
Setter for the vector of data member insertion ranges that specifies where a data member is inserted as far as this suppression specification is concerned. More... | |
void | set_has_size_change (bool flag) |
Setter of the "has_size_change" property. More... | |
void | set_potential_data_member_names (const string_set_type &) const |
Setter of the "potential_data_member_names" property. More... | |
void | set_potential_data_member_names_regex_str (const string &) const |
Setter of the "potential_data_member_names_regex" string. More... | |
void | set_reach_kind (reach_kind k) |
Setter of the way the diff node matching the current suppression specification is to be reached. More... | |
void | set_source_location_to_keep_regex_str (const string &) |
Setter of the regular expression string that designates the source location paths of types that should not be suppressed. More... | |
void | set_source_locations_to_keep (const unordered_set< string > &) |
Setter for the array of source location paths of types that should *NOT* be suppressed. More... | |
void | set_type_kind (type_kind k) |
Setter of the kind of type this suppression is about. More... | |
void | set_type_name (const string &name) |
Setter for the name of the type about which diff reports should be suppressed. More... | |
void | set_type_name_not_regex_str (const string &name_regex_str) |
Setter for the "type_name_not_regex_str" property of the type suppression specification. More... | |
void | set_type_name_regex_str (const string &name_regex_str) |
Setter for the "type_name_regex" property of the type suppression specification. More... | |
bool | suppresses_type (const type_base_sptr &type) const |
Test if the current instance of type_suppression matches a given type. More... | |
bool | suppresses_type (const type_base_sptr &type, const diff_context_sptr &ctxt) const |
Test if the current instance of type_suppression suppresses a change reports about a given type. More... | |
bool | suppresses_type (const type_base_sptr &type, const scope_decl *type_scope) const |
Test if the current instance of type_suppression matches a given type in a given scope. More... | |
![]() | |
suppression_base (const string &label) | |
Constructor for suppression_base. More... | |
suppression_base (const string &label, const string &file_name_regex_str, const string &file_name_not_regex_str) | |
Constructor for suppression_base. More... | |
bool | get_drops_artifact_from_ir () const |
Tests if the current suppression specification is to avoid adding the matched ABI artifact to the internal representation or not. More... | |
const string & | get_file_name_not_regex_str () const |
Getter for the "file_name_not_regex" property of the current instance of suppression_base. More... | |
const string & | get_file_name_regex_str () const |
Getter for the "file_name_regex" property of the current instance of suppression_base. More... | |
bool | get_is_artificial () const |
Test is the suppression specification is artificial. More... | |
const string | get_label () const |
Getter for the label associated to this suppression specification. More... | |
const string & | get_soname_not_regex_str () const |
Getter of the "soname_not_regex_str property of the current instance of suppression_base. More... | |
const string & | get_soname_regex_str () const |
Getter of the "soname_regex_str property of the current instance of suppression_base. More... | |
bool | has_file_name_related_property () const |
Test if the current suppression has a property related to file name. More... | |
bool | has_soname_related_property () const |
Test if the current suppression has a property related to SONAMEs. More... | |
void | set_drops_artifact_from_ir (bool) |
Set the flag that says whether the current suppression specification is to avoid adding the matched ABI artifact to the internal representation or not. More... | |
void | set_file_name_not_regex_str (const string ®exp) |
Setter for the "file_name_not_regex" property of the current instance of suppression_base. More... | |
void | set_file_name_regex_str (const string ®exp) |
Setter for the "file_name_regex" property of the current instance of suppression_base. More... | |
void | set_is_artificial (bool) |
Set a flag saying if the suppression specification is artificial or not. More... | |
void | set_label (const string &) |
Setter for the label associated to this suppression specification. More... | |
void | set_soname_not_regex_str (const string ®exp) |
Setter of the "soname_not_regex_str property of the current instance of suppression_base. More... | |
void | set_soname_regex_str (const string ®exp) |
Setter of the "soname_regex_str property of the current instance of suppression_base. More... | |
![]() | |
negated_suppression_base () | |
Constructor of the negated_suppression_base. More... | |
virtual | ~negated_suppression_base () |
Destructor of the negated_suppression_base. More... | |
Additional Inherited Members | |
![]() | |
typedef shared_ptr< insertion_range > | insertion_range_sptr |
A convenience typedef for a shared pointer to insertion_range. More... | |
typedef vector< insertion_range_sptr > | insertion_ranges |
A convenience typedef for a vector of insertion_range_sptr. More... | |
enum | reach_kind { DIRECT_REACH_KIND , POINTER_REACH_KIND , REFERENCE_REACH_KIND , REFERENCE_OR_POINTER_REACH_KIND } |
The different ways through which the type diff has been reached. More... | |
enum | type_kind { UNKNOWN_TYPE_KIND , CLASS_TYPE_KIND , STRUCT_TYPE_KIND , UNION_TYPE_KIND , ENUM_TYPE_KIND , ARRAY_TYPE_KIND , TYPEDEF_TYPE_KIND , BUILTIN_TYPE_KIND } |
The kind of the type the current type suppression is supposed to be about. More... | |
![]() | |
std::unique_ptr< priv > | priv_ |
![]() | |
std::unique_ptr< priv > | priv_ |
Abstraction of a negated type suppression specification.
A negated type suppression suppresses a type if the negation of the equivalent propositions for a type_suppression are valid.
Definition at line 459 of file abg-suppression.h.
negated_type_suppression | ( | const string & | label, |
const string & | type_name_regexp, | ||
const string & | type_name | ||
) |
Constructor for negated_type_suppression.
label | the label of the suppression. This is just a free form comment explaining what the suppression is about. |
type_name_regexp | the regular expression describing the types about which diff reports should be suppressed. If it's an empty string, the parameter is ignored. |
type_name | the name of the type about which diff reports should be suppressed. If it's an empty string, the parameter is ignored. |
Note that parameter type_name_regexp
and type_name_regexp
should not necessarily be populated. It usually is either one or the other that the user wants.
Definition at line 1701 of file abg-suppression.cc.
|
virtual |
Destructor of the negated_type_suppression type.
Definition at line 1723 of file abg-suppression.cc.
|
virtual |
Evaluate this suppression specification on a given diff node and say if the diff node should be suppressed or not.
diff | the diff node to evaluate this suppression specification against. |
diff
should be suppressed. Reimplemented from type_suppression.
Definition at line 1717 of file abg-suppression.cc.