summaryrefslogtreecommitdiff
path: root/cli
AgeCommit message (Collapse)AuthorFilesLines
2012-06-20Rename --*logue options to --*logue-fileBoris Kolpackov5-86/+86
2012-06-20Add forward declarations for parser to allow custom specializationsBoris Kolpackov1-0/+7
2012-06-15Add support for specifying output stream type (--stream-type)Boris Kolpackov9-29/+66
2012-06-04Remove unnecessary default: statementBoris Kolpackov1-2/+0
2012-06-04Fix bug in argument formattingBoris Kolpackov1-0/+5
2012-06-03Use formatted string when calculating option lengthBoris Kolpackov1-3/+4
2012-06-03Generate certain template runtime code in every source fileBoris Kolpackov3-381/+389
This is needed if the cli runtime is included from another file instead of being generated. The alternative would be to move that code to the header file. However, that would also require including a lot of standard headers in the generated header file.
2012-05-11Fix bug in trailing space handling in documentation stringsBoris Kolpackov1-4/+4
2012-05-11Add support for specifying multiple classes with --class optionBoris Kolpackov6-34/+68
2012-05-11Move lookup to semantic graph from parserBoris Kolpackov4-125/+131
2012-05-11Generate all options for all classes in single HTML definition listBoris Kolpackov1-4/+4
This way we won't have any irregular gaps is the option list is assembled from multiple classes.
2012-05-11Add support for -I optionBoris Kolpackov7-33/+125
Now quote-included ("") option files are searched for relative to the including file while bracket-included (<>) ones are search in the directories specified with -I.
2012-05-11Fix lookup bugBoris Kolpackov1-1/+1
2012-05-11Avoid unused variable warning for empty option classesBoris Kolpackov1-5/+7
2012-05-10Implement option class inheritanceBoris Kolpackov19-239/+994
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.
2012-05-10Add support for options file inclusionBoris Kolpackov7-49/+237
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.
2012-03-08Print usage/version information to STDOUT instead of STDERRBoris Kolpackov1-4/+8
2011-12-14Add missing breakBoris Kolpackov1-0/+1
2011-11-18Assume we have 78 character per line instead of 79 for Windows portabilityBoris Kolpackov1-1/+5
2011-01-23Store option names as std::string instead of const char*Boris Kolpackov1-3/+3
With the scanner interface we now cannot assume that the returned value will still be valid after another call to more(). This was the case when we were always scanning argv/argc but now that we have the file scanner, we have to be careful.
2011-01-23Allow the options file search function to ignore the fileBoris Kolpackov2-7/+21
2011-01-20Add support for multiple file options and file search callbacksBoris Kolpackov3-11/+100
2011-01-04Use correct parser interfaceBoris Kolpackov1-6/+12
2011-01-04Cosmetic changesBoris Kolpackov1-1/+3
2011-01-04Copyright updateBoris Kolpackov57-58/+58
2010-11-19Add option description that can be examined at runtime.Boris Kolpackov9-4/+273
New option: --generate-description.
2010-11-09Add support for suppressing documentation for undocumented optionsBoris Kolpackov7-40/+106
2010-09-14Implement the --cli-namespace optionBoris Kolpackov11-87/+154
2010-08-03Pass missing argument in vector and set parsersBoris Kolpackov1-2/+4
2010-06-04Cosmetic changesBoris Kolpackov1-2/+2
2010-06-04Add support for single quotes in option filesBoris Kolpackov3-8/+10
2010-06-02Update description of the --options-file optionBoris Kolpackov4-8/+81
2010-06-02Add support for quoting in option file scannerBoris Kolpackov3-4/+74
2010-06-02Implement generation of specifier functions (--generate-specifier)Boris Kolpackov12-21/+178
These functions determine whether the option was specified on the command line. New test: specifier.
2010-06-02Add cli options instead of overriding themBoris Kolpackov1-1/+1
2010-03-30Cosmetic changeBoris Kolpackov1-1/+0
2010-01-01Update copyrightBoris Kolpackov57-58/+58
2009-12-13Bump version to 1.1.01.1.0Boris Kolpackov1-1/+1
2009-12-13Workaround for older g++ versionsBoris Kolpackov1-1/+1
2009-12-13Workaround for VC++ 8.0Boris Kolpackov1-2/+6
2009-12-13Mark 'stdout' as a reserved nameBoris Kolpackov5-16/+17
On some platforms (e.g., Windows/VC++ 8.0) stdout is a macro.
2009-12-10Allows additional options to be provided in files (--options-file)Boris Kolpackov6-11/+328
Implemented using the new argv_file_scanner scanner implementation.
2009-12-10Get rid of warning in generated code if option class is emptyBoris Kolpackov2-1/+16
2009-12-10Add new files to the VC++ projectsBoris Kolpackov2-0/+16
2009-12-10Cosmetic changesBoris Kolpackov1-22/+38
2009-12-10Scanner-based parsing with support for element erasingBoris Kolpackov9-57/+521
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.
2009-12-10Cosmetic changesBoris Kolpackov1-1/+2
2009-11-28Use a scanner interface instead of argc/argvBoris Kolpackov8-145/+419
This will allow supporting other sources of options, for example, an option file.
2009-11-22Implement option value modifiers generationBoris Kolpackov8-29/+68
2009-11-17Complete the implementation of the option documentationBoris Kolpackov12-76/+650
Add the man page generator. Port CLI usage, HTML documentation and the man page to the auto-generated version. Update examples and documentation.