diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2009-11-08 15:35:19 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2009-11-08 15:35:19 +0200 |
commit | 369470005607b9501a769be0ae2a4c79c90bad84 (patch) | |
tree | 459030d6b0ca4f1799d0313a5e63fc24038cd34d /cli/options.cli | |
parent | 907b5fed58d53bbb5e25c590df97f01a0ac93733 (diff) |
Implement usage generation
Also migrate the CLI compiler usage handling to the auto-generated version.
Diffstat (limited to 'cli/options.cli')
-rw-r--r-- | cli/options.cli | 93 |
1 files changed, 80 insertions, 13 deletions
diff --git a/cli/options.cli b/cli/options.cli index a5fe0ae..3216e08 100644 --- a/cli/options.cli +++ b/cli/options.cli @@ -10,26 +10,93 @@ include <map>; include <string>; include <vector>; +include <cstddef>; class options { - bool --help; - bool --version; + bool --help {"Print usage information and exit."}; + bool --version {"Print version and exit."}; - std::string --output-dir | -o; + std::string --output-dir | -o + { + "<dir>", + "Write generated files to <dir>." + }; - bool --suppress-inline; + bool --suppress-inline + { + "Generate all functions non-inline." + }; - std::string --hxx-suffix = ".hxx"; - std::string --ixx-suffix = ".ixx"; - std::string --cxx-suffix = ".cxx"; + bool --suppress-usage + { + "Suppress generation of usage printing code." + }; - std::string --option-prefix = "-"; - std::string --option-separator = "--"; + std::size_t --option-length = 0 + { + "<len>", + "Indent option description <len> characters when printing usage." + }; - bool --include-with-brackets; - std::string --include-prefix; - std::string --guard-prefix; + std::string --hxx-suffix = ".hxx" + { + "<suffix>", + "Use <suffix> instead of the default '.hxx' to construct the name of + the generated header file." + }; - std::map<std::string, std::string> --reserved-name; + std::string --ixx-suffix = ".ixx" + { + "<suffix>", + "Use <suffix> instead of the default '.ixx' to construct the name of + the generated inline file." + }; + + std::string --cxx-suffix = ".cxx" + { + "<suffix>", + "Use <suffix> instead of the default '.cxx' to construct the name of + the generated source file." + }; + + std::string --option-prefix = "-" + { + "<prefix>", + "Use <prefix> instead of the default '-' as an option prefix." + }; + + std::string --option-separator = "--" + { + "<sep>", + "Use <sep> instead of the default '--' as an optional separator between + options and arguments." + }; + + bool --include-with-brackets + { + "Use angle brackets (<>) instead of quotes (\"\") in generated #include + directives." + }; + + std::string --include-prefix + { + "<prefix>", + "Add <prefix> to generated #include directive paths." + }; + + std::string --guard-prefix + { + "<prefix>", + "Add <prefix> to generated header inclusion guards." + }; + + std::map<std::string, std::string> --reserved-name + { + "<name>=<rep>", + "Add <name> to the list of names that should not be used as identifiers. + The name can optionally be followed by '=' and the <rep> replacement + name that should be used instead.", + "" + }; }; |