3.1.1.3 C Code Inclusion
Using a syntax similar to GNU utilities flex
and bison
, it
is possible to directly include C source text and comments verbatim into
the generated output file. This is accomplished by enclosing the region
inside left-justified surrounding ‘%{’, ‘%}’ pairs. Here is
an input fragment based on the previous example that illustrates this
feature:
| %{
#include <assert.h>
/* This section of code is inserted directly into the output. */
int return_month_days (struct month *months, int is_leap_year);
%}
struct month { char *name; int number; int days; int leap_days; };
%%
january, 1, 31, 31
february, 2, 28, 29
march, 3, 31, 31
...
|