[WIP] feat: introduce ArbitraryInRange #192
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces the trait
ArbitraryInRange
, which allows limiting the range of possible values for some types. The intention is to use this trait in an not-yet-implemented[arbitrary(range(min = …, max = …))]
field-attribute. A separate trait is necessary, because 1. not all types can be meaningful used as ranges, 2. I like to use#[arbitrary(range(min = 23, max = 42))]
onOption<u8>
.However, there are certainly some implementations missing, so still WIP.