summaryrefslogtreecommitdiff
path: root/cli/options.cli
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2009-11-08 15:35:19 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2009-11-08 15:35:19 +0200
commit369470005607b9501a769be0ae2a4c79c90bad84 (patch)
tree459030d6b0ca4f1799d0313a5e63fc24038cd34d /cli/options.cli
parent907b5fed58d53bbb5e25c590df97f01a0ac93733 (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.cli93
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.",
+ ""
+ };
};