Commit Graph

21 Commits

Author SHA1 Message Date
9d108df846 chore: improve error generation. exit on missing required arg. remove redundant fake_parser. 2026-03-16 22:37:59 +04:00
8e502bcb8b feat: improve the readability of the generated help text. add type hints for the generation of the help text when description is not given for the variable. use sfinae for the check so that it compiles if not given. 2026-03-16 21:50:05 +04:00
d5b99ef407 feat: improve help text for better readability, less duplication on the conventions, better syntax information. 2026-03-16 20:53:00 +04:00
d8a515ea37 chore: remove v1 examples 2026-03-16 17:53:31 +04:00
182974d61a fix: windows parsing 2026-03-16 17:41:45 +04:00
3552d34dac chore: add missing definitions to the files. remove static qualifier from the headers. add help text to the actions. 2026-03-15 23:55:06 +04:00
c7304aa36e chore: separate definitions from declarations for argument parser where possible. 2026-03-15 23:32:18 +04:00
7e2c09cbf9 feat: Introduce core argument parsing framework with platform-specific parsers, conventions, and type-based value parsing. 2026-03-15 23:05:13 +04:00
516c6fa732 PoC: better argument building.
Add a few more ideas to todo.
2025-10-26 08:21:34 +04:00
44bc63d17d update(conventions): extend windows conventions to show more capability. 2025-10-07 02:30:31 +04:00
fea5042af7 feat(convention) add windows style argument conventions. 2025-10-07 02:08:25 +04:00
cad569de25 feat(parser): implement on-complete callback functionality
Add on_complete event handler to trigger actions after argument parsing completes
Move grep logic to separate function and register it as a completion callback
Update argument getters and help text generation to be const methods
2025-10-06 11:17:14 +04:00
5f65eca713 feat(argument_parser): add vector parsing support for int and string types
Implement parser traits for vector<int> and vector<string> to handle comma-separated values
Add corresponding argument handling in main to demonstrate usage
2025-10-06 04:52:20 +04:00
77638ce554 refactor(argument_parser): simplify grep implementation and use regex
Replace shared_ptr state management with direct function call
Add regex support for pattern matching
Remove unused test_store argument
2025-10-06 04:46:29 +04:00
43a38c2794 feat: add point argument handling to parser
Add support for handling Point type arguments in the argument parser. The change includes adding a new point argument and corresponding output handling in main.
2025-10-06 04:12:35 +04:00
d30105abe1 refactor(argument_parser): improve argument handling and cleanup code
- Add new template method for argument addition with type
- Handle optional values more safely in get_optional
- Remove commented test code from main.cpp
2025-10-06 04:09:15 +04:00
8437a00c6b feat(parser): add argument value storage and retrieval
- Implement stored_arguments map to store argument values
- Add get_optional method to retrieve stored values
- Add helper methods for creating parametered and non-parametered actions
- Refactor argument adding logic into smaller methods
- Update main.cpp to demonstrate new storage functionality
2025-10-06 04:06:16 +04:00
6c3adc3dda refactor(parser): replace variant-based actions with polymorphic interface
Simplify action handling by introducing a polymorphic base class for actions
Remove std::variant usage and improve type safety with proper cloning
Clean up unused includes and test code in main.cpp
2025-10-04 00:33:27 +04:00
179f5e5d1b better type safety for action types. 2025-10-04 00:12:23 +04:00
ebbf3983de feat(parser): add platform-specific parsers and argument conventions
Implement platform-specific parsers for Windows, Linux, and macOS
Add GNU argument convention implementations
Create fake parser for testing purposes
Update CMakeLists to include new headers
2025-10-03 23:56:54 +04:00
5ff911f351 first 2025-06-24 18:35:50 +04:00