libabigail
Public Member Functions | List of all members
default_reporter Class Reference

The default, initial, reporter of the libabigail comparison engine. More...

#include <abg-reporter.h>

Inheritance diagram for default_reporter:
[legend]

Public Member Functions

virtual bool diff_has_net_changes (const corpus_diff *d) const
 Test if a given instance of corpus_diff carries changes whose reports are not suppressed by any suppression specification. In effect, these are deemed incompatible ABI changes. More...
 
virtual void report (const type_decl_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const enum_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const typedef_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const qualified_type_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const pointer_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const reference_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const fn_parm_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const function_type_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const subrange_diff &d, std::ostream &out, const std::string &indent="") const
 Report about the change carried by a subrange_diff diff node in a serialized form. More...
 
virtual void report (const array_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const base_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const scope_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const class_or_union_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const class_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const union_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const distinct_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const function_decl_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const var_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const translation_unit_diff &d, std::ostream &out, const std::string &indent="") const
 
virtual void report (const corpus_diff &d, std::ostream &out, const std::string &indent="") const
 
void report_local_function_type_changes (const function_type_diff &d, std::ostream &out, const std::string &indent) const
 For a function_type_diff node, report the local changes carried by the diff node. More...
 
bool report_local_qualified_type_changes (const qualified_type_diff &d, std::ostream &out, const std::string &indent) const
 For a qualified_type_diff node, report the changes that are local. More...
 
void report_local_reference_type_changes (const reference_diff &d, std::ostream &out, const std::string &indent) const
 For a node, report the local changes carried by the diff node. More...
 
void report_non_type_typedef_changes (const typedef_diff &d, std::ostream &out, const std::string &indent) const
 For a typedef_diff node, report the local changes to the typedef rather the changes to its underlying type. More...
 
void report_underlying_changes_of_qualified_type (const qualified_type_diff &d, ostream &out, const string &indent) const
 For a qualified_type_diff node, report the changes of its underlying type. More...
 
- Public Member Functions inherited from reporter_base
virtual bool diff_to_be_reported (const diff *d) const
 Tests if the diff node is to be reported. More...
 

Detailed Description

The default, initial, reporter of the libabigail comparison engine.

Definition at line 153 of file abg-reporter.h.

Member Function Documentation

bool diff_has_net_changes ( const corpus_diff d) const
virtual

Test if a given instance of corpus_diff carries changes whose reports are not suppressed by any suppression specification. In effect, these are deemed incompatible ABI changes.

Parameters
dthe corpus_diff to consider
Returns
true iff d carries subtype changes that are deemed incompatible ABI changes.

Implements reporter_base.

Reimplemented in leaf_reporter.

Definition at line 32 of file abg-default-reporter.cc.

void report ( const subrange_diff d,
std::ostream &  out,
const std::string &  indent = "" 
) const
virtual

Report about the change carried by a subrange_diff diff node in a serialized form.

Parameters
dthe diff node to consider.
outthe output stream to report to.
indentthe indentation string to use in the report.

Implements reporter_base.

Reimplemented in leaf_reporter.

Definition at line 691 of file abg-default-reporter.cc.

void report_local_function_type_changes ( const function_type_diff d,
std::ostream &  out,
const std::string &  indent 
) const

For a function_type_diff node, report the local changes carried by the diff node.

Parameters
dthe function_type_diff node to consider.
outthe output stream to report to.
indentthe white space indentation string to use.

Definition at line 578 of file abg-default-reporter.cc.

bool report_local_qualified_type_changes ( const qualified_type_diff d,
std::ostream &  out,
const std::string &  indent 
) const

For a qualified_type_diff node, report the changes that are local.

Parameters
dthe qualified_type_diff node to consider.
outthe output stream to emit the report to.
indentthe white string to use for indentation.
Returns
true iff a local change has been emitted. In this case, the local change is a name change.

Definition at line 339 of file abg-default-reporter.cc.

void report_local_reference_type_changes ( const reference_diff d,
std::ostream &  out,
const std::string &  indent 
) const

For a node, report the local changes carried by the diff node.

Parameters
dthe node to consider.
outthe output stream to report to.
indentthe white space indentation to use in the report.

Definition at line 455 of file abg-default-reporter.cc.

void report_non_type_typedef_changes ( const typedef_diff d,
std::ostream &  out,
const std::string &  indent 
) const

For a typedef_diff node, report the local changes to the typedef rather the changes to its underlying type.

Note that changes to the underlying type are also considered local.

Parameters
dthe typedef_diff node to consider.
outthe output stream to report to.
indentthe white space string to use for indentation.

Definition at line 237 of file abg-default-reporter.cc.

void report_underlying_changes_of_qualified_type ( const qualified_type_diff d,
ostream &  out,
const string &  indent 
) const

For a qualified_type_diff node, report the changes of its underlying type.

Parameters
dthe qualified_type_diff node to consider.
outthe output stream to emit the report to.
indentthe white string to use for indentation.
Returns
true iff a local change has been emitted. In this case, the local change is a name change.

Definition at line 370 of file abg-default-reporter.cc.


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