43 parser(std::istream& input);
63 bool get_number(std::string
const& token,
double& result);
153 void parse_loop(std::istream& input, std::ostream& output);
bool get_primary(double &result)
void parse_loop(std::istream &input, std::ostream &output)
bool isprint(char c) const
parser(std::istream &input)
parse_error(std::string const &msg)
void get_identifier(std::string &identifier)
std::string charify(char c)
void push_back(std::string const &token, kind k)
bool get_mul_expr(double &result)
bool isalpha(char c) const
kind get_token(std::string &token)
std::string token_
One token push-back.
bool get_number(std::string const &token, double &result)
bool get_expr(double &result)
bool get_add_expr(double &result)
std::istream & input_
Share the input stream.
bool get_unary(double &result)
kind kind_
The kind of token that was pushed back.
std::ctype< char > const & ctype_
Cache the ctype facet for checking character categories.
bool isalnum(char c) const
bool isdigit(char c) const