Flc() generates four files from a well-formed input file:
    itemization(
    it() A file containing the implementation of the tt(lex) member function
and its support functions. By default this file is named tt(lex.cc).

    it() A file containing the scanner's class interface. By default this file
is named tt(Scanner.h). The scanner class itself is generated once and is
thereafter `owned' by the programmer, who may change it em(ad-lib). Newly
added members (data members, function members) will survive future flc() runs
as flc() will never rewrite an existing scanner class interface file, unless
explicitly ordered to do so.

    it() A file containing the interface of the scanner class's em(base
class). The scanner class is publicly derived from this base class. It is used
to minimize the size of the scanner interface itself. The scanner base class
is `owned' by bf(flexc++) and should never be hand-modified. By
default the scanner's base class is provided in the file
tt(Scannerbase.h). At each new flc() run this file is rewritten unless flc()
is explicitly ordered em(not) to do so.

    it() A file containing the em(implementation header). This file should
contain includes and declarations that are only required when compiling the
members of the scanner class. By default this file is named
tt(Scanner.ih). This file, like the file containing the scanner class's
interface is never rewritten by flc() unless flc() is explicitly ordered to do
so.
    )


The first file, tt(lex.cc) contains lookup tables, the code to walk through
the lookup tables and the actions specified in the lexer file. Since the
lookup tables and actions (possibly) change every time flc() is called,
tt(lex.cc) is rewritten at each new flc() run.

The file tt(Scannerbase.h) contains the tt(Scanner)'s base class The
tt(Scanner) class is derived from tt(ScannerBase). The tt(Scannerbase.h) is
`owned' by flc(), and flc() reqrites tt(Scannerbase.h) at each new flc() run.

The other two files tt(Scanner.h) and tt(Scanner.ih) are created only once,
and can safely be edited by the programmer. The tt(Scanner.h) header file
contains the final tt(Scanner) class, to which new members may be added. These
members may be called from the actions defined in flc()'s input file
(tt(lexer)).

Finally, tt(Scanner.ih) contains declarations which are used by the
implementations of the tt(Scanner) members. One can place tt(using) statements
here as well as includes which are only required by member implementations. In
a well-designed classq, source files defining new members of the class
tt(Scanner) should only have to include tt(Scanner.ih).

