YACC Grammar Spec and ObjecTime Linear Form |
Category: |
Toolset
Applicable to: |
ObjecTime 4.4
Purpose: |
To provide additional information about the ObjecTime linear form
Intended Audience: |
All ObjecTime developers
Description: |
The linear form yacc grammar defines the textual storage format for ObjecTime models. Note that this is not the same as the textual documentation format generated via the Output menu item.
Actors passivated in linear form are passivated into a true storage format that can be re-activated into a session. On the other hand, the text output, while closely following linear form, is intended for the creation of hard copy and cannot be read back into the toolset.
ObjecTime provides support for parsing passivated actors not model "Output".
The "Library Configuration ..." Menu on the ObjecTime icon opens a dialog box which asks for the storage type for files to be used when saving classes/packages to disk or to a library. The options are
You would select text for textual linear format, and then passivate the individual classes.
Once you have your actors in linear format you probably want to parse them. Please have a look at p.11 of the 4.4 Release Notice. This describes the usage and location of the new linear form spec (it's in $OBJECTIME_HOME/linearForm). The "old" linear form as specified in Appendix B of the Toolset Guide has not changed. In this directory you will find the source code for a skeletal parser. You will need to modify it suit your needs. It is based on YACC with machine readable linear format definition specified in lf.h and lf.y files.
Also, the versionSpec of a modelSpec is not optional. It tells us the version of the linear form grammar (e.g. 4.4, 5.0, ...), which allows more recent parsers to parse older versions.
Textual documentation generated via the Output menu item is NOT the same as linear form and cannot be re-activated into an ObjecTime session.
Limitations: |
None
See also: |
The Toolset Guide
Copyright © 1999, ObjecTime Limited. |