28 bool parse()
override;
38 std::stack<irept>
stack;
46 throw error(
"unexpected end of file");
68 throw error(
"unexpected ')'");
80 stack.top().get_sub().push_back(tmp);
85 throw error(
"unexpected token");
irept smt2irep(std::istream &in)
unsigned get_line_no() const
std::string what() const override
A human readable description of what went wrong.
smt2irept(std::istream &_in)
source_locationt source_location
void set_line(const irep_idt &line)
Base class for tree-like data structures with sharing.
std::vector< exprt > stack
mstreamt & result() const
smt2_errort error()
generate an error exception
virtual tokent next_token()