aboutsummaryrefslogtreecommitdiff
path: root/xsde/xsde.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2011-06-02 04:37:21 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2011-06-02 04:37:21 +0200
commit5e7c109f2a401ef8f4d898bf59fb643c7c7eeed0 (patch)
tree0ce0829214f4a5471535182db57714f866f2d045 /xsde/xsde.cxx
parent644b8d4495bb9e3979c221098b9e3b1c5b1ca278 (diff)
Add support for fat type files
Such files also contain all the global elements that this type classifies.
Diffstat (limited to 'xsde/xsde.cxx')
-rw-r--r--xsde/xsde.cxx13
1 files changed, 12 insertions, 1 deletions
diff --git a/xsde/xsde.cxx b/xsde/xsde.cxx
index e0d9d72..1571d84 100644
--- a/xsde/xsde.cxx
+++ b/xsde/xsde.cxx
@@ -85,6 +85,7 @@ namespace CLI
extern Key type_file_regex_trace = "type-file-regex-trace";
extern Key schema_file_regex = "schema-file-regex";
extern Key schema_file_regex_trace = "schema-file-regex-trace";
+ extern Key fat_type_file = "fat-type-file";
extern Key file_list = "file-list";
extern Key file_list_prologue = "file-list-prologue";
extern Key file_list_epilogue = "file-list-epilogue";
@@ -107,6 +108,7 @@ namespace CLI
type_file_regex_trace, Boolean,
schema_file_regex, NarrowStrings,
schema_file_regex_trace, Boolean,
+ fat_type_file, Boolean,
file_list, NarrowString,
file_list_prologue, NarrowString,
file_list_epilogue, NarrowString,
@@ -383,6 +385,12 @@ main (Int argc, Char* argv[])
<< " specified with the --schema-file-regex option."
<< endl;
+ e << "--fat-type-file" << endl
+ << " Generate code corresponding to global elements\n"
+ << " into type files instead of schema files when the\n"
+ << " --file-per-type option is specified."
+ << endl;
+
// File list options.
//
e << "--file-list <file>" << endl
@@ -1171,7 +1179,10 @@ main (Int argc, Char* argv[])
common_ops.value<CLI::schema_file_regex_trace> ());
Transformations::SchemaPerType trans (
- type_translator, gen_hybrid ? "fixed" : 0);
+ type_translator,
+ common_ops.value<CLI::fat_type_file> (),
+ gen_hybrid ? "fixed" : 0);
+
Schemas schemas (trans.transform (*schema));
// Generate code.