Trait ark_r1cs_std::bits::ToBitsGadget
source · pub trait ToBitsGadget<F: Field> {
fn to_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>;
fn to_non_unique_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError> { ... }
fn to_bits_be(&self) -> Result<Vec<Boolean<F>>, SynthesisError> { ... }
fn to_non_unique_bits_be(&self) -> Result<Vec<Boolean<F>>, SynthesisError> { ... }
}
Expand description
Specifies constraints for conversion to a little-endian bit representation
of self
.
Required Methods§
sourcefn to_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
fn to_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
Outputs the canonical little-endian bit-wise representation of self
.
This is the correct default for 99% of use cases.
Provided Methods§
sourcefn to_non_unique_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
fn to_non_unique_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
Outputs a possibly non-unique little-endian bit-wise representation of
self
.
If you’re not absolutely certain that your usecase can get away with a
non-canonical representation, please use self.to_bits()
instead.
sourcefn to_bits_be(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
fn to_bits_be(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
Outputs the canonical big-endian bit-wise representation of self
.
sourcefn to_non_unique_bits_be(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
fn to_non_unique_bits_be(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
Outputs a possibly non-unique big-endian bit-wise representation of
self
.
Implementations on Foreign Types§
source§impl<F: Field> ToBitsGadget<F> for [Boolean<F>]
impl<F: Field> ToBitsGadget<F> for [Boolean<F>]
source§fn to_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
fn to_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
Outputs self
.
source§impl<F: Field> ToBitsGadget<F> for [UInt8<F>]
impl<F: Field> ToBitsGadget<F> for [UInt8<F>]
source§fn to_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
fn to_bits_le(&self) -> Result<Vec<Boolean<F>>, SynthesisError>
Interprets self
as an integer, and outputs the little-endian
bit-wise decomposition of that integer.