binius_field/random.rs
1// Copyright 2024-2025 Irreducible Inc.
2
3use rand::distr::{Distribution, StandardUniform};
4
5/// A value that can be randomly generated
6pub trait Random {
7 /// Generate random value
8 fn random(rng: impl rand::Rng) -> Self;
9}
10
11impl<T> Random for T
12where
13 StandardUniform: Distribution<T>,
14{
15 fn random(mut rng: impl rand::Rng) -> Self {
16 rng.random()
17 }
18}