feat(cli): parse arguments with clap

The binary now derives command-line parsing from clap instead of maintaining a
custom parser. SEARCH_LIMIT remains an optional positional argument and keeps
its default of 1_000_000_000, while clap now owns usage errors, --help, and
--version output.

The parser stores the limit as NonZeroU64 so zero is rejected before the search
starts. The existing CLI parsing tests now exercise clap directly, and the
README documents the generated help/version flags plus the top-level program
structure.

Test Plan:
- cargo clippy
- cargo clippy --benches
- cargo clippy --tests
- cargo test
- cargo run -- --help

Trailer:
Refs: local request to replace custom argument parsing with clap
Dependencies: none
This commit is contained in:
2026-04-26 14:03:31 +02:00
parent 09967ad6d7
commit 04bb89375c
4 changed files with 222 additions and 39 deletions
+1
View File
@@ -4,6 +4,7 @@ version = "1.0.0"
edition = "2024"
[dependencies]
clap = { version = "4", features = ["derive"] }
[lints.rust]
unsafe_code = "forbid"