The output files output.hh and output.cc
declare and define the parser class in the namespace yy
. The
class name defaults to parser
, but may be changed using
‘%define parser_class_name "name"’. The interface of
this class is detailed below. It can be extended using the
%parse-param
feature: its semantics is slightly changed since
it describes an additional member of the parser class, and an
additional argument for its constructor.
The types for semantics value and locations.
A structure that contains (only) the definition of the tokens as the
yytokentype
enumeration. To refer to the tokenFOO
, the scanner should useyy::parser::token::FOO
. The scanner can use ‘typedef yy::parser::token token;’ to “import” the token enumeration (see Calc++ Scanner).
Build a new parser object. There are no arguments by default, unless ‘%parse-param {type1 arg1}’ was used.
Get or set the stream used for tracing the parsing. It defaults to
std::cerr
.