Flavorc Version 2.1 User's Manual
This document describes the features of the Flavor translator and how to use it within
your own C++ programs. Its purpose is not to describe Flavor itself, but rather the
programming environment in which flavorc-generated code operates. It is best
that you are already familiar with the basic syntax and structure of Flavor (see Overview Documents for information on background documentation,
or the Flavor Specification itself). Even without any prior
knowledge of Flavor, however, you should be able to follow the text without problems.
Several examples will be shown to demonstrate the operation of the software; it is
advisable to run and test some or all of these examples in your own platform/environment.
Source code for several examples of various complexity is also available on-line.
The contents of this document are as follows.
- Section 1: Using Flavor with C++
- This is a detailed description of how code generated by the Flavor translator interfaces
with C++. We use very simple Flavor representations based on plain text files, so that
emphasis is placed on the C++ side rather than the Flavor side. In the process, all of
Flavor's syntactic features are gradually introduced. This can also serve as an
introduction to Flavor itself, albeit a limited one: issues like scoping rules or maps are
not discussed as they do not affect C++ programming in any way.
-
- Section 2: Command Line Options
- Here we describe the various command line options and their effects.
-
- Section 3: Verbatim Code
- Verbatim code is a mechanism allowing a programmer to insert C++ code in the Flavor
source code. We describe how to fully utilize this feature in order to integrate Flavor
and C++ code in the same file.
-
- Section 4: Pragma Statements
- A description of the syntax and use of pragma statements. Pragma statements is a
mechanism to trigger options setting to the translator from the Flavor source code
(similar to pragma statements of a C or C++ preprocessor).
-
- Section 5: Tracing
- Description of tracing and the format of the trace dump.
-
- Section 6: Run-Time Library
- Description of the various interfaces used by the translator, including bitstream I/O,
tracing, and error reporting.
We made every possible effort to ensure that document is complete and without errors.
We also tried to make it as brief as possible, to ensure that you get all the necessary
information quickly and can be up and running with your own code as soon as possible.
Should you find any problems with the software or the documentation, we would appreciate
your feedback.
Copyright © 1997 Alexandros Eleftheriadis
All Rights Reserved