Files
bison/examples
Akim Demaille 0a82316e54 glr2.cc: example: use objects (not pointers) to represent the AST
Currently we are using pointers.  The whole point of
glr2.cc (vs. glr.cc) is precisely to allow genuine C++ objects to be
semantic values.  Let's make that work.

* data/skeletons/glr2.cc (glr_state::glr_state): Be sure to initialize
yysval.
(glr_state): Add copy-ctor, assignment and dtor.
(glr_state::copyFrom): Be sure to initialize the destination if it was
not.
(glr_state::~glr_state): Destroy the semantic value.
* examples/c++/glr/ast.hh: Rewrite so that we use genuine objects,
rather than a traditional OOP hierarchy that requires to deal with
pointers.
With help from Bruno Belanyi <bruno.belanyi@epita.fr>.
* examples/c++/glr/c++-types.yy: Remove memory management.
Use true objects.
(main): Don't reach yydebug directly.

* examples/c++/glr/local.mk: We need C++11.
2020-12-20 18:41:42 +01:00
..
2020-06-01 08:29:53 +02:00
2020-01-10 19:16:23 +01:00
2020-11-20 06:42:39 +01:00

This directory contains examples of Bison grammar files, sorted per language.

Several of them come from the documentation, which should be installed together with Bison. The URLs are provided for convenience.

These examples come with a README and a Makefile. Not only can they be used to toy with Bison, they can also be starting points for your own grammars.

Please, be sure to read the C examples before looking at the other languages, as these examples are simpler.