|
GCC Middle and Back End API Reference
|
#include <output-spec.h>


Public Member Functions | |
| std::unique_ptr< sink > | parse_and_make_sink (diagnostics::context &dc) |
| void | report_error (const char *gmsgid,...) const ATTRIBUTE_GCC_DIAG(2 |
| void void | report_unknown_key (const std::string &key, const scheme_handler &scheme) const |
| void | report_missing_key (const std::string &key, const std::string &scheme_name, const char *metavar) const |
| output_file | open_output_file (label_text &&filename) const |
| const char * | get_option_name () const |
| const char * | get_unparsed_spec () const |
| line_maps * | get_affected_location_mgr () const |
| virtual | ~context () |
| virtual void | report_error_va (const char *gmsgid, va_list *ap) const =0 |
| virtual const char * | get_base_filename () const =0 |
| bool | handle_kv (const std::string &key, const std::string &value, scheme_handler &scheme) const |
Protected Member Functions | |
| context (const char *option_name, const char *unparsed_spec, key_handler *client_keys, line_maps *affected_location_mgr) | |
Protected Attributes | |
| const char * | m_option_name |
| const char * | m_unparsed_spec |
| key_handler * | m_client_keys |
| line_maps * | m_affected_location_mgr |
An abstract base class for handling the DSL of -fdiagnostics-add-output= and -fdiagnostics-set-output=.
|
inlinevirtual |
|
inlineprotected |
References m_affected_location_mgr, m_client_keys, m_option_name, and m_unparsed_spec.
Referenced by diagnostics::output_spec::dc_spec_context::dc_spec_context().
|
inline |
|
pure virtual |
|
inline |
|
inline |
| bool diagnostics::output_spec::context::handle_kv | ( | const std::string & | key, |
| const std::string & | value, | ||
| scheme_handler & | scheme ) const |
References gcc_unreachable, m_client_keys, diagnostics::output_spec::key_handler::malformed_value, diagnostics::output_spec::key_handler::maybe_handle_kv(), diagnostics::output_spec::key_handler::ok, report_unknown_key(), and diagnostics::output_spec::key_handler::unrecognized.
Referenced by diagnostics::output_spec::output_factory::make_sink().
| output_file diagnostics::output_spec::context::open_output_file | ( | label_text && | filename | ) | const |
References fopen, output_file, and report_error().
Referenced by diagnostics::output_spec::html_scheme_handler::make_sink(), and diagnostics::output_spec::sarif_scheme_handler::make_sink().
| std::unique_ptr< sink > diagnostics::output_spec::context::parse_and_make_sink | ( | diagnostics::context & | dc | ) |
| void diagnostics::output_spec::context::report_error | ( | const char * | gmsgid, |
| ... ) const |
struct context.
References ap, and report_error_va().
Referenced by diagnostics::output_spec::output_factory::make_sink(), open_output_file(), diagnostics::output_spec::parse(), diagnostics::output_spec::key_handler::parse_bool_value(), diagnostics::output_spec::key_handler::parse_enum_value(), report_missing_key(), and report_unknown_key().
|
pure virtual |
Implemented in diagnostics::output_spec::dc_spec_context.
References ap.
Referenced by report_error().
| void diagnostics::output_spec::context::report_missing_key | ( | const std::string & | key, |
| const std::string & | scheme_name, | ||
| const char * | metavar ) const |
References get_option_name(), get_unparsed_spec(), and report_error().
Referenced by diagnostics::output_spec::html_scheme_handler::make_sink(), and diagnostics::output_spec::sarif_scheme_handler::make_sink().
| void diagnostics::output_spec::context::report_unknown_key | ( | const std::string & | key, |
| const scheme_handler & | scheme ) const |
|
protected |
Referenced by context(), and get_affected_location_mgr().
|
protected |
Referenced by context(), handle_kv(), and report_unknown_key().
|
protected |
Referenced by context(), and get_option_name().
|
protected |
Referenced by context(), and get_unparsed_spec().