pub struct Rng(/* private fields */);Expand description
xorshift64*. Seeded per run so probe payloads differ every time — a provider cannot pre-cache answers to canaries it has not seen.
Implementations§
Source§impl Rng
impl Rng
pub fn new() -> Self
Sourcepub fn from_seed(seed: u64) -> Self
pub fn from_seed(seed: u64) -> Self
Deterministic construction.
A run must be unpredictable to the endpoint being probed — a provider
that can guess the payloads can pre-cache the answers — but that is a
property of who chooses the seed, not of whether one exists. The CLI
leaves it to Rng::new; an embedder that probes on someone else’s
behalf picks the seed itself, keeps it, and can then replay the exact
run when a verdict is challenged. Tests use it for the obvious reason.
pub fn next_u64(&mut self) -> u64
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Rng
impl RefUnwindSafe for Rng
impl Send for Rng
impl Sync for Rng
impl Unpin for Rng
impl UnsafeUnpin for Rng
impl UnwindSafe for Rng
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more