12 #ifndef CPROVER_STATEMENT_LIST_STATEMENT_LIST_PARSER_H
13 #define CPROVER_STATEMENT_LIST_STATEMENT_LIST_PARSER_H
52 bool parse()
override;
93 const std::string &error);
Base class for all expressions.
Intermediate representation of a parsed Statement List file before converting it into a goto program.
Responsible for starting the parse process and to translate the result into a statement_list_parse_tr...
statement_list_parse_treet parse_tree
Tree that is being filled by the parsing process.
void add_tag_list(const exprt &tag_list)
Adds a tag list to the parse tree by converting the tag_list expression tree.
statement_list_parsert(message_handlert &message_handler)
Constructor.
void add_function_block(const exprt &block)
Adds a function block to the parse tree by converting the block expression tree.
statement_list_parsert(const statement_list_parsert &)=delete
void print_tree(std::ostream &out) const
Prints the parse tree of this instance to the given output stream.
~statement_list_parsert() override
void add_function(const exprt &function)
Adds a function to the parse tree by converting the function expression tree.
void swap_tree(statement_list_parse_treet &other)
Swaps the contents of the parse tree of this instance with other.
static int instance_count
bool parse() override
Starts the parsing process and saves the result inside of this instance's parse tree.
#define PRECONDITION(CONDITION)
Statement List Language Parse Tree.
int yystatement_listerror(statement_list_parsert &parser, void *scanner, const std::string &error)
Forwards any errors that are encountered during the parse process.