pub struct RangeStatement {
pub lo: u64,
pub hi: u64,
}Expand description
Public statement for a range predicate: the prover asserts knowledge of a
private value with lo <= value <= hi. lo and hi are the public inputs.
Fields§
§lo: u64§hi: u64Implementations§
Source§impl RangeStatement
impl RangeStatement
Sourcepub fn prove(&self, value: u64) -> Result<PredicateProof, String>
pub fn prove(&self, value: u64) -> Result<PredicateProof, String>
Prove a private value satisfies this statement (self.lo <= value <= self.hi).
Sourcepub fn verify(&self, proof: &PredicateProof) -> bool
pub fn verify(&self, proof: &PredicateProof) -> bool
Verify a proof against this statement’s public bounds.
Trait Implementations§
Source§impl Clone for RangeStatement
impl Clone for RangeStatement
Source§fn clone(&self) -> RangeStatement
fn clone(&self) -> RangeStatement
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RangeStatement
impl Debug for RangeStatement
Source§impl PartialEq for RangeStatement
impl PartialEq for RangeStatement
Source§fn eq(&self, other: &RangeStatement) -> bool
fn eq(&self, other: &RangeStatement) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for RangeStatement
impl Eq for RangeStatement
impl StructuralPartialEq for RangeStatement
Auto Trait Implementations§
impl Freeze for RangeStatement
impl RefUnwindSafe for RangeStatement
impl Send for RangeStatement
impl Sync for RangeStatement
impl Unpin for RangeStatement
impl UnsafeUnpin for RangeStatement
impl UnwindSafe for RangeStatement
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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