mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-11 13:23:04 +00:00
* examples/calc++/Makefile, examples/calc++/calc++-driver.cc, * examples/calc++/calc++-driver.hh, * examples/calc++/calc++-parser.yy, * examples/calc++/calc++-scanner.ll, examples/calc++/calc++.cc, * examples/calc++/compile, examples/calc++/test: New.
38 lines
634 B
C++
38 lines
634 B
C++
#include "calc++-driver.hh"
|
|
#include "calc++-parser.hh"
|
|
|
|
calcxx_driver::calcxx_driver ()
|
|
: trace_scanning (false),
|
|
trace_parsing (false)
|
|
{
|
|
variables["one"] = 1;
|
|
variables["two"] = 2;
|
|
}
|
|
|
|
calcxx_driver::~calcxx_driver ()
|
|
{
|
|
}
|
|
|
|
void
|
|
calcxx_driver::parse (const std::string &f)
|
|
{
|
|
file = f;
|
|
scan_begin ();
|
|
yy::calcxx_parser parser (*this);
|
|
parser.set_debug_level (trace_parsing);
|
|
parser.parse ();
|
|
scan_end ();
|
|
}
|
|
|
|
void
|
|
calcxx_driver::error (const yy::location& l, const std::string& m)
|
|
{
|
|
std::cerr << l << ": " << m << std::endl;
|
|
}
|
|
|
|
void
|
|
calcxx_driver::error (const std::string& m)
|
|
{
|
|
std::cerr << m << std::endl;
|
|
}
|