diff --git a/ff_derive/Cargo.toml b/ff_derive/Cargo.toml index 68f5fe2..462a9b2 100644 --- a/ff_derive/Cargo.toml +++ b/ff_derive/Cargo.toml @@ -27,7 +27,6 @@ num-integer = "0.1" proc-macro2 = "1" quote = "1" syn = { version = "1", features = ["full"] } -cfg-if = "1" [badges] maintenance = { status = "passively-maintained" } diff --git a/ff_derive/src/lib.rs b/ff_derive/src/lib.rs index 5e7ebb6..df232bd 100644 --- a/ff_derive/src/lib.rs +++ b/ff_derive/src/lib.rs @@ -916,30 +916,28 @@ fn prime_field_impl( let from_repr_impl = endianness.from_repr(name, limbs); let to_repr_impl = endianness.to_repr(quote! {#repr}, &mont_reduce_self_params, limbs); - cfg_if::cfg_if! { - if #[cfg(feature = "bits")] { - let to_le_bits_impl = ReprEndianness::Little.to_repr( - quote! {::ff::derive::bitvec::array::BitArray::new}, - &mont_reduce_self_params, - limbs, - ); + let prime_field_bits_impl = if cfg!(feature = "bits") { + let to_le_bits_impl = ReprEndianness::Little.to_repr( + quote! {::ff::derive::bitvec::array::BitArray::new}, + &mont_reduce_self_params, + limbs, + ); - let prime_field_bits_impl = quote! { - impl ::ff::PrimeFieldBits for #name { - type ReprBits = REPR_BITS; + Some(quote! { + impl ::ff::PrimeFieldBits for #name { + type ReprBits = REPR_BITS; - fn to_le_bits(&self) -> ::ff::FieldBits { - #to_le_bits_impl - } + fn to_le_bits(&self) -> ::ff::FieldBits { + #to_le_bits_impl + } - fn char_le_bits() -> ::ff::FieldBits { - ::ff::FieldBits::new(MODULUS) - } + fn char_le_bits() -> ::ff::FieldBits { + ::ff::FieldBits::new(MODULUS) } - }; - } else { - let prime_field_bits_impl = quote! {}; - } + } + }) + } else { + None }; let top_limb_index = limbs - 1;