| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
internal_repeat
Extend the `internal_repeat` macro with new special tokens:
- `$+`/`ident$+` for current + 1
- `$-`/`ident$-` for current - 1 (clamped at 0)
- `$^`/`ident$^` for min (aka start) value
Move the repetition marker from outside the paren to the last token
inside, supporting `(group,+)` syntax where `+` is the final token.
A trailing `+` or `-` after `)` shifts the repetition count.
Add `PickerPattern::pick` method using new syntax to allow
incremental composition of typed picks.
|
| |
|
|
| |
PickerFlag
|
| |
|
|
|
|
|
|
|
|
| |
pattern
BREAKING CHANGE: `PickerRequirement` no longer stores a `PickerResult`.
Parsed results are now held in the `PickerPattern` structs.
The `result`, `result_mut`, `set_result`, `reset_result`, and
`with_result` methods on `PickerRequirement` have been removed.
The `Picker::pick` method is introduced to begin a pattern definition.
|
| |
|
|
|
| |
Refactor multiple `if let` patterns in macros to use the let-chain
syntax for improved readability
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
parsing
Implement the foundational `mingling_picker` library along with its
companion
`mingling_picker_macros` crate. The picker provides:
- `Pickable` trait for parsing types from raw strings
- `PickerResult` enum modeling parse outcomes
- `Picker` struct for storing and indexing command-line arguments
- `PickerRequirement` struct for declarative parameter definitions
- `PickerPattern` family (1..32) of typed pattern structs via the
`internal_repeat` proc macro
- `req!` proc macro as a succinct builder for `PickerRequirement`
Re-export `mingling_picker::macros::*` from the `mingling` crate when
the
`picker` feature is enabled, replacing the previous wildcard re-export
of
`mingling_macros`.
|
| |
|