GCC Middle and Back End API Reference
json_stderr_output_format Class Reference
Inheritance diagram for json_stderr_output_format:
Collaboration diagram for json_stderr_output_format:

Public Member Functions

 json_stderr_output_format (diagnostic_context &context, bool formatted)
 
 ~json_stderr_output_format ()
 
bool machine_readable_stderr_p () const final override
 
void dump (FILE *out, int indent) const override
 
void DEBUG_FUNCTION dump () const
 
std::unique_ptr< diagnostic_per_format_buffermake_per_format_buffer () final override
 
void set_buffer (diagnostic_per_format_buffer *base_buffer) final override
 
void on_begin_group () final override
 
void on_end_group () final override
 
void on_report_diagnostic (const diagnostic_info &diagnostic, diagnostic_t orig_diag_kind) final override
 
void on_diagram (const diagnostic_diagram &) final override
 
void after_diagnostic (const diagnostic_info &) final override
 
void update_printer () final override
 
bool follows_reference_printer_p () const final override
 
virtual void on_report_verbatim (text_info &)
 
diagnostic_contextget_context () const
 
pretty_printerget_printer () const
 
text_art::theme * get_diagram_theme () const
 

Protected Member Functions

void flush_to_file (FILE *outf)
 

Protected Attributes

diagnostic_contextm_context
 
std::unique_ptr< pretty_printerm_printer
 

Private Attributes

diagnostic_json_format_bufferm_buffer
 
std::unique_ptr< json::arraym_toplevel_array
 
json::objectm_cur_group
 
json::arraym_cur_children_array
 
bool m_formatted
 

Constructor & Destructor Documentation

◆ json_stderr_output_format()

json_stderr_output_format::json_stderr_output_format ( diagnostic_context & context,
bool formatted )
inline

◆ ~json_stderr_output_format()

json_stderr_output_format::~json_stderr_output_format ( )
inline

Member Function Documentation

◆ after_diagnostic()

void json_output_format::after_diagnostic ( const diagnostic_info & )
inlinefinaloverridevirtualinherited

◆ dump() [1/2]

◆ dump() [2/2]

void json_output_format::dump ( FILE * out,
int indent ) const
inlineoverridevirtualinherited

◆ flush_to_file()

void json_output_format::flush_to_file ( FILE * outf)
inlineprotectedinherited

◆ follows_reference_printer_p()

bool json_output_format::follows_reference_printer_p ( ) const
inlinefinaloverridevirtualinherited

◆ get_context()

◆ get_diagram_theme()

text_art::theme * diagnostic_output_format::get_diagram_theme ( ) const
inlineinherited

◆ get_printer()

◆ machine_readable_stderr_p()

bool json_stderr_output_format::machine_readable_stderr_p ( ) const
inlinefinaloverridevirtual

◆ make_per_format_buffer()

std::unique_ptr< diagnostic_per_format_buffer > json_output_format::make_per_format_buffer ( )
inlinefinaloverridevirtualinherited

◆ on_begin_group()

void json_output_format::on_begin_group ( )
inlinefinaloverridevirtualinherited

◆ on_diagram()

void json_output_format::on_diagram ( const diagnostic_diagram & )
inlinefinaloverridevirtualinherited

◆ on_end_group()

void json_output_format::on_end_group ( )
inlinefinaloverridevirtualinherited

◆ on_report_diagnostic()

void json_output_format::on_report_diagnostic ( const diagnostic_info & diagnostic,
diagnostic_t orig_diag_kind )
finaloverridevirtualinherited

◆ on_report_verbatim()

void diagnostic_output_format::on_report_verbatim ( text_info & )
virtualinherited

Reimplemented in diagnostic_text_output_format.

◆ set_buffer()

void json_output_format::set_buffer ( diagnostic_per_format_buffer * base_buffer)
inlinefinaloverridevirtualinherited

◆ update_printer()

void json_output_format::update_printer ( )
inlinefinaloverridevirtualinherited

Implements diagnostic_output_format.

References pp_show_color().

Field Documentation

◆ m_buffer

diagnostic_json_format_buffer* json_output_format::m_buffer
privateinherited

◆ m_context

◆ m_cur_children_array

json::array* json_output_format::m_cur_children_array
privateinherited

◆ m_cur_group

json::object* json_output_format::m_cur_group
privateinherited

◆ m_formatted

bool json_output_format::m_formatted
privateinherited

◆ m_printer

std::unique_ptr<pretty_printer> diagnostic_output_format::m_printer
protectedinherited

◆ m_toplevel_array

std::unique_ptr<json::array> json_output_format::m_toplevel_array
privateinherited

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