12 #ifndef CPROVER_STATEMENT_LIST_STATEMENT_LIST_PARSER_H
13 #define CPROVER_STATEMENT_LIST_STATEMENT_LIST_PARSER_H
40 bool parse()
override;
67 void clear()
override;
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 clear() override
Removes all functions and function blocks from the parse tree and clears the internal state of the pa...
void add_tag_list(const exprt &tag_list)
Adds a tag list to the parse tree by converting the tag_list expression tree.
void add_function_block(const exprt &block)
Adds a function block to the parse tree by converting the block expression tree.
void print_tree(std::ostream &out) const
Prints the parse tree of this instance to the given output stream.
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.
bool parse() override
Starts the parsing process and saves the result inside of this instance's parse tree.
Statement List Language Parse Tree.
int yystatement_listparse()
Defined in statement_list_y.tab.cpp.
statement_list_parsert statement_list_parser
Instance of the parser, used by other modules.
int yystatement_listerror(const std::string &error)
Forwards any errors that are encountered during the parse process.
void statement_list_scanner_init()
Defined in scanner.l.