* work on the flags book chapter and making sure the values are initialized properly.
* Fix initialization of values used in flags or options
* update some formatting and more brace initialization
* update more formatting and fix a incorrect initializer
* more formatting and some error fixes
* more formatting
* Small formatting fix
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
* add a needs method to the app/subcommand
* add some needs subcommand tests
* add a few more subcommand tests for needs and alias
* fix shadow warnings
* add some tests of the error pathways and fix a few anomalous conditions on the Option excludes function
* add needs and alias functions in the readme
* add some tests of ignore_case and underscore with the alias operations
* add a few more test cases for needs option groups
* add callback tests with needs and add a few comments in the readme
* update formatting
* add error checks on the aliases and restrictions on valid names for subcommands and aliases
* add checks for matching subcommands and improve error return values to include the offending name
* add some tests of the alias errors
* add some more tests to check subcommand name matching during addition
* add some additional tests and remove a redundant chunk of codes
* add some more checks of subcommand name overlap in option_groups
* allow disabled subcommand to bypass name matching check
* fix signed mismatch
add test from readme about callbacks
update callback documentation,
add a subbcommand immediate_callback test
add third callback and readme update
* a few more updates to the readme on `immediate_callback`
* Apply suggestions from code review
Co-Authored-By: Henry Schreiner <HenrySchreinerIII@gmail.com>
* Allow immediate_callback on the main app to run the main app callback prior to named subcommand callbacks, and reflect this change in the a new test and docs.
* Update README.md
Co-Authored-By: Henry Schreiner <HenrySchreinerIII@gmail.com>
add some test of the remove_excludes functions
add test for Issue #256
add remove_subcommand fail test
add remove_subcommand function and add_subcommand to option_group and some tests associated with them.
rework return values from _parse_* function to return true if the value was processed false otherwise, this simplified the logic and got rid of the pulling and clearing of the missing fields from option groups.
add TriggerOff and TriggerOn helper functions and some tests for them
add shapes example of multiple callbacks in order.
allow specification of callbacks that get executed immediately on completion of parsing of subcommand
add tests for enabled/disabled by default
add _get_fallthrough_parent. To get the most appropriate parent to fallthrough to
add enabled and disabled by default functions
add positional_arity example
Add a pre_parse_callback_ for apps. The Pre parse callback takes an argument for the number of remaining arguments left to process, and will execute prior to parsing for subcommands, and after the first option parse for option_groups.
Make sure that nameless subcommands can handle subcommands and that App will treat subcommands in a group nearly the same as if they were in the in the app to begin with.
* change the move function to _move_option and add an additional test
add a validation check on min options to make sure it is even possible to succeed.
add some additional tests to cover code paths and potential errors.
add a number of additional tests and checks and fix some issues with the add function in option_groups
clean up example and help formatting
add option_groups example to play with
move create_option_group to a member function using a dummy template
add some optionGroup tests
add min and max options calls and an associated Error call
* add ranges example, add excludes to app for options and subcommands.
* add some tests on ranges, and some subcommand tests with exclusion
* add tests in optionGroups for some invalid inputs
* add required option to subcommands and option_groups
* add disabled flag
* add disable option to subcommands and some more tests
* start work on ReadMe modifications
* update the readme with descriptions of function and methods added for option_groups
* clear up gcc 4.7 warnings
* some update to the Readme and a few more warnings fixed
* Minor readme touchup
add some comments in readME about performance
move operator[] to return const Option *
Apply suggestions from code review
Co-Authored-By: phlptp <top1@llnl.gov>
update readme and add some IniTests and fix a bug from the tests
add_flag_callback
add a few tests to capture the different paths
fix incorrectly updated CMAKE file, and add some subcommand test for option finding
add disable_flag_override and work out some kinks in the find option functions
add some more tests and fix a few bugs in as<> function for options
Allow general flag types and default values, add shortcut notation for retrieving values
* Adding first draft of Sets
Use IsMember now
Using IsMember as backend for Set
Non-const validator backend
Move set tests to set
Clearer inits
* Drop shortcut
Tighten up classes a bit for MSVC
Check with GCC 4.8 too
* Simpler templates, but more of them
Dropping more type safety for older compilers
Shortcut string set
* Adding shortcut init
Making g++ 4.7 docker image happy
Fix Clang tidy issue with last commit
Adding one more shortcut, adding a couple of tests
* Dropping dual pointer versions of code
* Smarter shortcut syntax
* Adding slighly faster choices
* Cleanup to make InMember simpler
* Drop choices for now, adding some tests
* ValidationError is now always the error from a validator
* Support for other types of initializer lists, including enums
* Factor out type utilities, single version of IsMember code
* Adding a few tests for #224
* Minor cleanup for Validation Error
* Adding tests, moved deprecated tests
* Docs updates
increment the parse_ variable on unnamed subcommands.
update the readme, and add a formatter test for nameless subcommands in nondefault group with other named subcommands.
add a test of default arguments
add a formatter test
add tests for unnamed subcommands and an example of the partitioned subcommands.
change the app_p to be a shared_ptr so you can add an App later on and merge them together
add the ability to add unnamed subcommands that allow partitioning on options into multiple apps.
* add ignore_underscore test cases and options to app
* add ignore_underscore for add_sets and some more tests for the sets and subcommands
* add some documentation lines and some failing tests
* update readme with ignore_underscore option
* remove failing tests from known issue
* remove empty line for code coverage
* Adding new parse layout
* Dropping shortcurcuit from help, since it has special override
* Refactor help call
* Dropping shortcurcuit since it is not needed now that help has custom behavoir
* Dropping MaxSubcommand error (cannot occur)
in progress: formatters
Getting closer
Working on apps
One test actually runs
All builds, added filter functions
Reverting a few behavours as needed
Repairs
All tests pass
Fixing error with adding help flag
Labels are simpler mappings, normalized setters
Adding help_all
Adding a few more tests
One more line tested
Adding one more check
Adding to readme
Simplify naming
Adding default constructors
Fixing spacing issues with subcommand all printout
Adding a couple of tests