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

Public Member Functions

 json_file_output_format (diagnostic_context &context, bool formatted, const char *base_file_name)
 
 ~json_file_output_format ()
 
bool machine_readable_stderr_p () const 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
 
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
 

Private Attributes

char * m_base_file_name
 
std::unique_ptr< json::arraym_toplevel_array
 
json::objectm_cur_group
 
json::arraym_cur_children_array
 
bool m_formatted
 

Constructor & Destructor Documentation

◆ json_file_output_format()

json_file_output_format::json_file_output_format ( diagnostic_context & context,
bool formatted,
const char * base_file_name )
inline

◆ ~json_file_output_format()

json_file_output_format::~json_file_output_format ( )
inline

Member Function Documentation

◆ after_diagnostic()

void json_output_format::after_diagnostic ( const diagnostic_info & )
inlinefinaloverridevirtualinherited

◆ flush_to_file()

void json_output_format::flush_to_file ( FILE * outf)
inlineprotectedinherited

◆ get_context()

◆ get_diagram_theme()

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

◆ get_printer()

◆ machine_readable_stderr_p()

bool json_file_output_format::machine_readable_stderr_p ( ) const
inlinefinaloverridevirtual

◆ 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()

Field Documentation

◆ m_base_file_name

char* json_file_output_format::m_base_file_name
private

◆ 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_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: