summaryrefslogtreecommitdiffstats
path: root/cli/header.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Add support for --output-{prefix,suffix} optionsBoris Kolpackov2016-01-111-1/+4
|
* Add --std option with c++{98,11,14} values; use function-static in C++11Boris Kolpackov2015-12-091-1/+1
| | | | | This way we can use option descriptions during static initialization (e.g., of an Apache module).
* Implement support for documentation inside classesBoris Kolpackov2015-11-241-8/+16
|
* Change print_short_usage() to print_usage()Boris Kolpackov2015-11-231-16/+10
|
* Implement entire page usage generationBoris Kolpackov2015-11-191-0/+31
|
* Add --generate-parse optionBoris Kolpackov2015-09-021-8/+14
| | | | | | | When specified, CLI will generate parse() functions instead of parsing constructors. This is primarily useful for being able to parse into an already initialized options class instance, for example, to implement merging/overriding.
* Add --short-usage optionBoris Kolpackov2015-09-021-5/+14
| | | | | When combined with --long-usage, it makes CLI generate both short and long usage printing code.
* Generate "direct access" modifier in addition to "setter"Boris Kolpackov2012-06-211-0/+6
|
* Make default constructor public for non-abstract classesBoris Kolpackov2012-06-211-3/+7
|
* Add support for specifying output stream type (--stream-type)Boris Kolpackov2012-06-151-1/+1
|
* Implement option class inheritanceBoris Kolpackov2012-05-101-46/+104
| | | | | | | For now multiple, non-virtual inheritance is supported. An option class can now also be declared abstract using the class c = 0 {...}; syntax. New option, --exclude-base, controls whether base class information is present in usage and documentation.
* Add support for options file inclusionBoris Kolpackov2012-05-101-2/+26
| | | | | | | | | | | | | | New include-path prefixes, c++: and cli:, are now recognized (e.g., include <cli:foo>;). Without a prefix, the include declarations is considered to be c++-include unless the path ends with the .cli extension. The cli-included files are loaded and parsed. Currently, only inclusion relative to the current file is supported. Duplicate inclusions are detected and ignored based on the absolute filesystem path. If a file cli-includes another file, then the runtime code is assumed to come from the included file and is not generated.
* Copyright updateBoris Kolpackov2011-01-041-1/+1
|
* Add option description that can be examined at runtime.Boris Kolpackov2010-11-191-1/+12
| | | | New option: --generate-description.
* Implement the --cli-namespace optionBoris Kolpackov2010-09-141-3/+3
|
* Implement generation of specifier functions (--generate-specifier)Boris Kolpackov2010-06-021-0/+17
| | | | | These functions determine whether the option was specified on the command line. New test: specifier.
* Update copyrightBoris Kolpackov2010-01-011-1/+1
|
* Scanner-based parsing with support for element erasingBoris Kolpackov2009-12-101-4/+13
| | | | | | Also implement argv_file_scanner which provides support for reading command line arguments from the argv array as well as files specified with command line options. New examples: file. New tests: ctor, erase, file.
* Use a scanner interface instead of argc/argvBoris Kolpackov2009-11-281-4/+2
| | | | | This will allow supporting other sources of options, for example, an option file.
* Implement option value modifiers generationBoris Kolpackov2009-11-221-1/+6
|
* Implement usage generationBoris Kolpackov2009-11-081-1/+11
| | | | Also migrate the CLI compiler usage handling to the auto-generated version.
* Use consistent const placementBoris Kolpackov2009-10-181-1/+1
|
* Generate parsing constructors and parsing codeBoris Kolpackov2009-09-271-3/+61
| | | | | Also generate some runtime support code such exceptions, value parsers, etc.
* Generate classes, accessors and data membersBoris Kolpackov2009-09-201-0/+76
|
* Add header, inline, and source generatorsBoris Kolpackov2009-09-201-0/+36
All they currently do is output the namespace structure plus the included C++ files for header.