parent
09a32b1a48
commit
f76872ad80
|
@ -883,7 +883,7 @@ fn prime_field_impl(
|
||||||
|
|
||||||
impl ::ff::Field for #name {
|
impl ::ff::Field for #name {
|
||||||
/// Computes a uniformly random element using rejection sampling.
|
/// Computes a uniformly random element using rejection sampling.
|
||||||
fn random<R: ::rand_core::RngCore>(rng: &mut R) -> Self {
|
fn random<R: ::rand_core::RngCore + ?std::marker::Sized>(rng: &mut R) -> Self {
|
||||||
loop {
|
loop {
|
||||||
let mut tmp = {
|
let mut tmp = {
|
||||||
let mut repr = [0u64; #limbs];
|
let mut repr = [0u64; #limbs];
|
||||||
|
|
|
@ -21,7 +21,7 @@ pub trait Field:
|
||||||
Sized + Eq + Copy + Clone + Send + Sync + fmt::Debug + fmt::Display + 'static
|
Sized + Eq + Copy + Clone + Send + Sync + fmt::Debug + fmt::Display + 'static
|
||||||
{
|
{
|
||||||
/// Returns an element chosen uniformly at random using a user-provided RNG.
|
/// Returns an element chosen uniformly at random using a user-provided RNG.
|
||||||
fn random<R: RngCore>(rng: &mut R) -> Self;
|
fn random<R: RngCore + ?std::marker::Sized>(rng: &mut R) -> Self;
|
||||||
|
|
||||||
/// Returns the zero element of the field, the additive identity.
|
/// Returns the zero element of the field, the additive identity.
|
||||||
fn zero() -> Self;
|
fn zero() -> Self;
|
||||||
|
|
Loading…
Reference in New Issue