(flex.info.gz) Creating Serialized Tables
Info Catalog
(flex.info.gz) Serialized Tables
(flex.info.gz) Serialized Tables
(flex.info.gz) Loading and Unloading Serialized Tables
22.1 Creating Serialized Tables
===============================
You may create a scanner with serialized tables by specifying:
%option tables-file=FILE
or
--tables-file=FILE
These options instruct flex to save the DFA tables to the file FILE.
The tables will _not_ be embedded in the generated scanner. The scanner
will not function on its own. The scanner will be dependent upon the
serialized tables. You must load the tables from this file at runtime
before you can scan anything.
If you do not specify a filename to `--tables-file', the tables will
be saved to `lex.yy.tables', where `yy' is the appropriate prefix.
If your project uses several different scanners, you can concatenate
the serialized tables into one file, and flex will find the correct set
of tables, using the scanner prefix as part of the lookup key. An
example follows:
$ flex --tables-file --prefix=cpp cpp.l
$ flex --tables-file --prefix=c c.l
$ cat lex.cpp.tables lex.c.tables > all.tables
The above example created two scanners, `cpp', and `c'. Since we did
not specify a filename, the tables were serialized to `lex.c.tables' and
`lex.cpp.tables', respectively. Then, we concatenated the two files
together into `all.tables', which we will distribute with our project.
At runtime, we will open the file and tell flex to load the tables from
it. Flex will find the correct tables automatically. (See next
section).
Info Catalog
(flex.info.gz) Serialized Tables
(flex.info.gz) Serialized Tables
(flex.info.gz) Loading and Unloading Serialized Tables
automatically generated byinfo2html