-
Notifications
You must be signed in to change notification settings - Fork 33
fpp to dict
This tool writes JSON dictionaries corresponding to F Prime topologies.
Options:
-
-d
dir: Set the output directory to dir. If this option is not present, then the output directory is the current directory. -
-i
files: Import files. The definitions in these files are part of the FPP model, but they do not cause any code to be generated. -
-s
string size: Specify the default string size. If this option is present, the argument must be a decimal integer value between 1 and 1024. If this option is not present, the default string size is 80. -
-f
framework version: Specify the framework version. -
-p
project version: Specify the project version. -
-l
library versions: Specify the versions of libraries used in the project.
Input:
-
A list fl_tr of files to translate: either the single file stdin or a list of files specified on the command line.
-
A list fl_i of files to import, specified as arguments to the
-i
option.
Output:
-
A set of
.json
files, written to the output directory.
Procedure:
-
Parse each of the files in fl_tr, generating a list tul_tr of translation units. When parsing, recursively resolve include specifiers.
-
Do the same for fl_i, generating a list tul_i.
-
Perform semantic checking on the concatenation of tul_fl and tul_i.
-
Check that no two definitions in tul_tr will generate a C++ file with the same name. If so, halt with an error message.
-
For each topology definition T in tul_tr, do the following:
-
Construct the dictionary D for T.
-
Generate the JSON output for D.
-