Commit graph

16 commits

Author SHA1 Message Date
Chaosvex
1bc58def54 Add ScopedCommand unit tests 2026-04-07 20:36:39 +01:00
Chaosvex
a8ffd22164 Add scoped_insert overload 2026-04-07 10:03:56 +01:00
Chaosvex
d3f665d049 Fix failing unit tests 2026-04-01 23:01:00 +01:00
Chaosvex
4aa7af2242
Refactor Commands library (#260)
* Registry no longer exists. Its functionality has been split between utilities and the Command class.
* Services are now passed a root command rather than a registry object, similar to the previous idea of the PrefixedRegistry, but much cleaner.
* All of the special handling required for Fusion to deal with multiple registries has been wiped out, even though I just spent hours rewriting it earlier. This is much better.
2026-03-29 00:38:21 +00:00
Chaosvex
95b6333382 Remove optional_argument in favour of a tag type 2026-03-21 21:42:37 +00:00
Chaosvex
0deda0e439
Clean up commands interface and switch to std::any (#229) 2026-03-20 19:05:55 +00:00
Chaosvex
cd2a9def35
Remove prefixed registry (#183) 2026-03-08 04:00:00 +00:00
Chaosvex
63cb74c31b Add unit tests to cover new prefixing options 2026-02-27 01:55:36 +00:00
Chaosvex
1fecd08624 Add unit tests to cover command flags 2026-02-27 01:45:01 +00:00
Chaosvex
0260a26aed Add unit tests to cover prefixed registry and scoped handles 2026-02-27 01:37:38 +00:00
Chaosvex
3842449e9b Extend command arg handling test to cover user data 2026-02-27 01:24:45 +00:00
Chaosvex
d6d5e14388
Rename 'search' to the more idiomatic 'find' (#165) 2026-02-23 16:22:34 +00:00
Chaosvex
5a549d6505
Remove ArgumentStore and use map directly (#160)
- Switched to boost::unordered_flat_map
- Moved some types into the ::arg:: namespace
2026-02-22 22:59:32 +00:00
Chaosvex
10a49ebb3e
Split command handling into its own library (#159) 2026-02-22 22:30:27 +00:00
Chaosvex
0fc04ee2ed Remove ability to rename commands
This is to prevent surprises with command keys not matching their names, particularly if a command is aliased multiple times. Renames now require re-registration.
2026-02-22 21:09:55 +00:00
Chaosvex
a9b4603a54 Add registry & command unit tests 2026-02-21 01:40:19 +00:00