Commit ee8ffb6
feat(quickcheck): Generator::spawn draws from an Arbitrary instance (#3994)
* feat(quickcheck): Generator::spawn draws from an Arbitrary instance
Hand-written generator suites routinely mix Arbitrary-based generation
into custom combinators (e.g. arbitrary strings inside a structured
document generator); until now each project re-derived the same
one-liner. Generator::spawn() makes the bridge a core API.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
* test: pin explicit seeds in the spawn docstring example and test
Review feedback: do not rely on Generator::samples' implicit default
seed, so the snapshots stay stable if the default ever changes.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
* refactor: make spawn a free function
Review feedback: the package's generator constructors (pure, one_of,
elements, frequency, int_range, char_range) are free functions; spawn
now follows the same convention.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>1 parent 5dc2be0 commit ee8ffb6
3 files changed
Lines changed: 36 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
32 | 53 | | |
33 | 54 | | |
34 | 55 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
173 | 173 | | |
174 | 174 | | |
175 | 175 | | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
| 45 | + | |
| 46 | + | |
45 | 47 | | |
46 | 48 | | |
47 | 49 | | |
| |||
0 commit comments