cprover
|
#include <ansi_c_language.h>
Public Member Functions | |
bool | preprocess (std::istream &instream, const std::string &path, std::ostream &outstream) override |
ANSI-C preprocessing. More... | |
bool | parse (std::istream &instream, const std::string &path) override |
bool | typecheck (symbol_tablet &symbol_table, const std::string &module) override |
bool | final (symbol_tablet &symbol_table) override |
void | show_parse (std::ostream &out) override |
~ansi_c_languaget () override | |
ansi_c_languaget () | |
bool | from_expr (const exprt &expr, std::string &code, const namespacet &ns) override |
bool | from_type (const typet &type, std::string &code, const namespacet &ns) override |
bool | type_to_name (const typet &type, std::string &name, const namespacet &ns) override |
bool | to_expr (const std::string &code, const std::string &module, exprt &expr, const namespacet &ns) override |
languaget * | new_language () override |
std::string | id () const override |
std::string | description () const override |
std::set< std::string > | extensions () const override |
void | modules_provided (std::set< std::string > &modules) override |
![]() | |
virtual void | get_language_options (const cmdlinet &) |
virtual void | dependencies (const std::string &module, std::set< std::string > &modules) |
virtual void | lazy_methods_provided (std::set< irep_idt > &methods) const |
virtual void | convert_lazy_method (const irep_idt &id, symbol_tablet &) |
virtual bool | interfaces (symbol_tablet &symbol_table) |
languaget () | |
virtual | ~languaget () |
Protected Attributes | |
ansi_c_parse_treet | parse_tree |
std::string | parse_path |
Additional Inherited Members |
Definition at line 17 of file ansi_c_language.h.
|
override |
Definition at line 218 of file ansi_c_language.cpp.
|
inline |
Definition at line 39 of file ansi_c_language.h.
References from_expr(), from_type(), to_expr(), and type_to_name().
Referenced by new_ansi_c_language(), and new_language().
|
inlineoverridevirtual |
Reimplemented from languaget.
Definition at line 66 of file ansi_c_language.h.
References extensions(), and modules_provided().
|
overridevirtual |
Reimplemented from languaget.
Definition at line 29 of file ansi_c_language.cpp.
Referenced by description().
|
overridevirtual |
Reimplemented from languaget.
Definition at line 127 of file ansi_c_language.cpp.
References ansi_c_entry_point(), and messaget::get_message_handler().
|
overridevirtual |
Reimplemented from languaget.
Definition at line 145 of file ansi_c_language.cpp.
References expr2c().
Referenced by ansi_c_languaget().
|
overridevirtual |
Reimplemented from languaget.
Definition at line 154 of file ansi_c_language.cpp.
References type2c().
Referenced by ansi_c_languaget().
|
inlineoverridevirtual |
Reimplemented from languaget.
Definition at line 65 of file ansi_c_language.h.
|
overridevirtual |
Reimplemented from languaget.
Definition at line 34 of file ansi_c_language.cpp.
References get_base_name(), and parse_path.
Referenced by description().
|
inlineoverridevirtual |
Implements languaget.
Definition at line 62 of file ansi_c_language.h.
References ansi_c_languaget().
|
overridevirtual |
Implements languaget.
Definition at line 52 of file ansi_c_language.cpp.
References configt::ansi_c, ansi_c_internal_additions(), ansi_c_parser, ansi_c_scanner_init(), ansi_c_parsert::clear(), config, ansi_c_parsert::cpp11, ansi_c_parsert::cpp98, configt::ansi_ct::for_has_scope, ansi_c_parsert::for_has_scope, messaget::get_message_handler(), parsert::in, ansi_c_parsert::mode, configt::ansi_ct::mode, ansi_c_parsert::parse(), parse_path, ansi_c_parsert::parse_tree, parse_tree, preprocess(), messaget::result(), parsert::set_file(), parsert::set_line_no(), messaget::set_message_handler(), and ansi_c_parse_treet::swap().
Referenced by add_library(), and compilet::parse_stdin().
|
overridevirtual |
ANSI-C preprocessing.
Reimplemented from languaget.
Definition at line 40 of file ansi_c_language.cpp.
References c_preprocess(), and messaget::get_message_handler().
Referenced by parse(), and compilet::parse_stdin().
|
overridevirtual |
Implements languaget.
Definition at line 135 of file ansi_c_language.cpp.
References ansi_c_parse_treet::output(), and parse_tree.
|
overridevirtual |
Implements languaget.
Definition at line 172 of file ansi_c_language.cpp.
References configt::ansi_c, ansi_c_parser, ansi_c_scanner_init(), ansi_c_typecheck(), ansi_c_parsert::clear(), config, messaget::get_message_handler(), irept::id(), parsert::in, ansi_c_parse_treet::items, irept::make_nil(), ansi_c_parsert::mode, configt::ansi_ct::mode, exprt::op0(), exprt::operands(), ansi_c_parsert::parse(), ansi_c_parsert::parse_tree, messaget::result(), parsert::set_file(), messaget::set_message_handler(), and exprt::type().
Referenced by ansi_c_languaget().
|
overridevirtual |
Reimplemented from languaget.
Definition at line 163 of file ansi_c_language.cpp.
References type2name().
Referenced by ansi_c_languaget().
|
overridevirtual |
Implements languaget.
Definition at line 104 of file ansi_c_language.cpp.
References ansi_c_typecheck(), messaget::get_message_handler(), linking(), parse_tree, and remove_internal_symbols().
Referenced by add_library().
|
protected |
Definition at line 73 of file ansi_c_language.h.
Referenced by modules_provided(), and parse().
|
protected |
Definition at line 72 of file ansi_c_language.h.
Referenced by parse(), show_parse(), and typecheck().