Struct snarkvm_wasm::traits::utilities::uint::UInt128 [−][src]
Fields
bits: Vec<Boolean, Global>negated: boolvalue: Option<u128>Implementations
impl UInt128[src]
Trait Implementations
impl<F> Add<F, UInt128> for UInt128 where
F: Field + PrimeField, [src]
F: Field + PrimeField,
type ErrorType = SynthesisError
pub fn add<CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, <UInt128 as Add<F, UInt128>>::ErrorType> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, <UInt128 as Add<F, UInt128>>::ErrorType> where
CS: ConstraintSystem<F>,
impl<F> AllocGadget<u128, F> for UInt128 where
F: Field, [src]
F: Field,
pub fn alloc<Fn, T, CS>(
cs: CS,
value_gen: Fn
) -> Result<UInt128, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<u128>, [src]
cs: CS,
value_gen: Fn
) -> Result<UInt128, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<u128>,
pub fn alloc_input<Fn, T, CS>(
cs: CS,
value_gen: Fn
) -> Result<UInt128, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<u128>, [src]
cs: CS,
value_gen: Fn
) -> Result<UInt128, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<u128>,
pub fn alloc_constant<Fn, T, CS>(
_cs: CS,
_f: Fn
) -> Result<Self, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>, [src]
_cs: CS,
_f: Fn
) -> Result<Self, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>,
pub fn alloc_checked<Fn, T, CS>(cs: CS, f: Fn) -> Result<Self, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>, [src]
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>,
pub fn alloc_input_checked<Fn, T, CS>(
cs: CS,
f: Fn
) -> Result<Self, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>, [src]
cs: CS,
f: Fn
) -> Result<Self, SynthesisError> where
Fn: FnOnce() -> Result<T, SynthesisError>,
CS: ConstraintSystem<F>,
T: Borrow<V>,
impl Clone for UInt128[src]
impl<F> ComparatorGadget<F> for UInt128 where
F: Field + PrimeField, [src]
F: Field + PrimeField,
pub fn greater_than<CS>(
&self,
cs: CS,
other: &Self
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
other: &Self
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>,
pub fn less_than_or_equal<CS>(
&self,
cs: CS,
other: &Self
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
other: &Self
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>,
pub fn greater_than_or_equal<CS>(
&self,
cs: CS,
other: &Self
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
other: &Self
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>,
impl<F> CondSelectGadget<F> for UInt128 where
F: PrimeField, [src]
F: PrimeField,
pub fn conditionally_select<CS>(
cs: CS,
cond: &Boolean,
first: &UInt128,
second: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>, [src]
cs: CS,
cond: &Boolean,
first: &UInt128,
second: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
pub fn cost() -> usize[src]
impl<F> ConditionalEqGadget<F> for UInt128 where
F: Field, [src]
F: Field,
pub fn conditional_enforce_equal<CS>(
&self,
cs: CS,
other: &UInt128,
condition: &Boolean
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
other: &UInt128,
condition: &Boolean
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>,
pub fn cost() -> usize[src]
impl Debug for UInt128[src]
impl Eq for UInt128[src]
impl<F> EqGadget<F> for UInt128 where
F: Field, [src]
F: Field,
pub fn enforce_equal<CS>(
&self,
cs: CS,
other: &Self
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
other: &Self
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>,
pub fn cost() -> usize[src]
impl<F> EvaluateEqGadget<F> for UInt128 where
F: PrimeField, [src]
F: PrimeField,
pub fn evaluate_equal<CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>,
impl<F> EvaluateLtGadget<F> for UInt128 where
F: Field + PrimeField, [src]
F: Field + PrimeField,
pub fn less_than<CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>,
impl PartialEq<UInt128> for UInt128[src]
pub fn eq(&self, other: &UInt128) -> bool[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool1.0.0[src]
impl PartialOrd<UInt128> for UInt128[src]
pub fn partial_cmp(&self, other: &UInt128) -> Option<Ordering>[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool1.0.0[src]
impl<F> ToBytesGadget<F> for UInt128 where
F: Field, [src]
F: Field,
pub fn to_bytes<CS>(
&self,
_cs: CS
) -> Result<Vec<UInt8, Global>, SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
_cs: CS
) -> Result<Vec<UInt8, Global>, SynthesisError> where
CS: ConstraintSystem<F>,
pub fn to_bytes_strict<CS>(
&self,
cs: CS
) -> Result<Vec<UInt8, Global>, SynthesisError> where
CS: ConstraintSystem<F>, [src]
&self,
cs: CS
) -> Result<Vec<UInt8, Global>, SynthesisError> where
CS: ConstraintSystem<F>,
impl UInt for UInt128[src]
pub fn negate(&self) -> UInt128[src]
Returns the inverse UInt128
pub fn is_constant(&self) -> bool[src]
Returns true if all bits in this UInt128 are constant
pub fn to_bits_le(&self) -> Vec<Boolean, Global>[src]
Turns this UInt128 into its little-endian byte order representation.
pub fn from_bits_le(bits: &[Boolean]) -> UInt128[src]
Converts a little-endian byte order representation of bits into a
UInt128.
pub fn rotr(&self, by: usize) -> UInt128[src]
pub fn xor<F, CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: Field, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: Field,
XOR this UInt128 with another UInt128
pub fn addmany<F, CS>(
cs: CS,
operands: &[UInt128]
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField, [src]
cs: CS,
operands: &[UInt128]
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField,
Perform modular addition of several UInt128 objects.
pub fn sub<F, CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField,
Perform modular subtraction of two UInt128 objects.
pub fn sub_unsafe<F, CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField,
Perform unsafe subtraction of two UInt128 objects which returns 0 if overflowed
pub fn mul<F, CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField,
Bitwise multiplication of two UInt128 objects.
Reference: https://en.wikipedia.org/wiki/Binary_multiplier
pub fn div<F, CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: PrimeField,
Perform long division of two UInt128 objects.
Reference: https://en.wikipedia.org/wiki/Division_algorithm
pub fn pow<F, CS>(
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: Field + PrimeField, [src]
&self,
cs: CS,
other: &UInt128
) -> Result<UInt128, SynthesisError> where
CS: ConstraintSystem<F>,
F: Field + PrimeField,
Bitwise multiplication of two UInt128 objects.
Reference: /snarkVM/models/src/curves/field.rs
pub fn result_is_constant(first: &Self, second: &Self) -> bool[src]
Auto Trait Implementations
impl RefUnwindSafe for UInt128
impl Send for UInt128
impl Sync for UInt128
impl Unpin for UInt128
impl UnwindSafe for UInt128
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<F, T> ConditionalOrEqualsGadget<F> for T where
T: ConditionalEqGadget<F> + CondSelectGadget<F>,
F: Field, [src]
T: ConditionalEqGadget<F> + CondSelectGadget<F>,
F: Field,
pub fn conditional_enforce_equal_or<CS>(
cs: CS,
cond: &Boolean,
var: &T,
first: &T,
second: &T,
should_enforce: &Boolean
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>, [src]
cs: CS,
cond: &Boolean,
var: &T,
first: &T,
second: &T,
should_enforce: &Boolean
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>,
pub fn cost() -> usize[src]
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized, [src]
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
pub fn equivalent(&self, key: &K) -> bool[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<F, T> OrEqualsGadget<F> for T where
T: ConditionalOrEqualsGadget<F>,
F: Field, [src]
T: ConditionalOrEqualsGadget<F>,
F: Field,
pub fn enforce_equal_or<CS>(
cs: CS,
cond: &Boolean,
var: &T,
first: &T,
second: &T
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>, [src]
cs: CS,
cond: &Boolean,
var: &T,
first: &T,
second: &T
) -> Result<(), SynthesisError> where
CS: ConstraintSystem<F>,
pub fn cost() -> usize[src]
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,