pub struct U32SubGate {
pub a: Variable,
pub b: Variable,
pub borrow_in: Variable,
pub c: Variable,
pub borrow_out: Variable,
}
Fields§
§a: Variable
§b: Variable
§borrow_in: Variable
§c: Variable
§borrow_out: Variable
Implementations§
source§impl U32SubGate
impl U32SubGate
pub const fn empty() -> Self
pub fn add_to_cs<F: SmallField, CS: ConstraintSystem<F>>(self, cs: &mut CS)
pub fn perform_subtraction<F: SmallField, CS: ConstraintSystem<F>>( cs: &mut CS, a: Variable, b: Variable, borrow_in: Variable, ) -> (Variable, Variable)
Trait Implementations§
source§impl Clone for U32SubGate
impl Clone for U32SubGate
source§impl Debug for U32SubGate
impl Debug for U32SubGate
source§impl<F: SmallField> Gate<F> for U32SubGate
impl<F: SmallField> Gate<F> for U32SubGate
fn check_compatible_with_cs<CS: ConstraintSystem<F>>(&self, cs: &CS) -> bool
type Evaluator = U32SubConstraintEvaluator
fn evaluator(&self) -> Self::Evaluator
type Tools = ()
fn placement_type(&self) -> GatePlacementType
fn num_repetitions_in_geometry(&self, geometry: &CSGeometry) -> usize
fn num_required_constants(&self, geometry: &CSGeometry) -> usize
fn capacity_per_row<CS: ConstraintSystem<F>>(&self, cs: &CS) -> usize
fn row_finalization_function<CS: ConstraintSystem<F>>() -> Option<GateRowCleanupFunction<CS>>
fn columns_finalization_function<CS: ConstraintSystem<F>>() -> Option<GateColumnsCleanupFunction<CS>>
source§impl Hash for U32SubGate
impl Hash for U32SubGate
source§impl PartialEq for U32SubGate
impl PartialEq for U32SubGate
impl Eq for U32SubGate
Auto Trait Implementations§
impl Freeze for U32SubGate
impl RefUnwindSafe for U32SubGate
impl Send for U32SubGate
impl Sync for U32SubGate
impl Unpin for U32SubGate
impl UnwindSafe for U32SubGate
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more