Releases: gershnik/argum
Releases · gershnik/argum
v2.5
v2.4
- Fixes to C++ module interface
With MSVC recent bug fixes module now finally works again in 17.3
v2.3
- Workarounds for bugs in Visual Studio 2022, 17.3.3
v2.2
Added support for GCC 12
v2.1
It is now possible to require an argument to be "attached" to an option.
That is, for options -f
and --foo
to require syntax -fARG
and --foo=ARG
and disallow -f ARG
and --foo ARG
.
This can be handy if an argument is optional and you also have positional arguments.
See Option::requireAttachedArgument
method.
v2.0
- You can now chose between using exception or expected values for error reporting. Define
ARGUM_USE_EXPECTED
to switch to expected values. - Building with exceptions (and RTTI) disabled is supported too. This automatically implies
ARGUM_USE_EXPECTED
. On Clang, GCC and MSVC this mode is automatically detected when exceptions are disabled. On other compilers defineARGUM_NO_THROW
. - You can customize the "terminate" function called when Argum encounters illegal arguments or usage. Define
ARGUM_CUSTOM_TERMINATE
and implement[[noreturn]] inline void Argum::terminateApplication(const char * message)
. See README or Wiki for more details. - Bug fixes
v1.3
- Support for help and usage formatting for subcommands
- Better naming in parser configuration
v1.2
- Bug fixes
- Better modularization of help formatter
v1.1
Added convenience parsers that allow easy conversion and validation of options arguments and positional
- Integral parser function:
parseIntegral<T>
- Floating point parsing function:
parseFloatingPoint<T>
- Choice parser:
ChoiceParser
/WChoiceParser
. Allows restricting input to a number of choices and returns index of the choice. - Boolean parser:
BooleanParser
/WBooleanParser
. Based on choice parser and converts things like "1"/"0", "on"/"off", "true"/"false" to booleantrue
orfalse
If you are not using single-header/module distributions these live in <argum/type-parsers.h>
v1.0
Initial version