proof_of_sql/base/scalar/
mod.rsmod error;
pub use error::ScalarConversionError;
mod mont_scalar;
#[cfg(test)]
mod mont_scalar_test;
use alloc::string::String;
use core::{cmp::Ordering, ops::Sub};
pub use mont_scalar::Curve25519Scalar;
pub(crate) use mont_scalar::MontScalar;
mod mont_scalar_from;
#[cfg(test)]
mod mont_scalar_from_test;
#[cfg(test)]
pub mod test_scalar;
#[cfg(test)]
mod test_scalar_test;
use num_bigint::BigInt;
pub trait Scalar:
Clone
+ core::fmt::Debug
+ core::fmt::Display
+ PartialEq
+ Default
+ for<'a> From<&'a str>
+ Sync
+ Send
+ num_traits::One
+ core::iter::Sum
+ core::iter::Product
+ Sub<Output = Self>
+ Copy
+ core::ops::MulAssign
+ core::ops::AddAssign
+ num_traits::Zero
+ for<'a> core::convert::From<&'a Self> + for<'a> core::convert::From<&'a bool> + for<'a> core::convert::From<&'a i16> + for<'a> core::convert::From<&'a i32> + for<'a> core::convert::From<&'a i64> + for<'a> core::convert::From<&'a i128> + for<'a> core::convert::From<&'a u8> + core::convert::TryInto <bool>
+ core::convert::TryInto <i8>
+ core::convert::TryInto <i16>
+ core::convert::TryInto <i32>
+ core::convert::TryInto <i64>
+ core::convert::TryInto <i128>
+ core::convert::Into<[u64; 4]>
+ core::convert::From<[u64; 4]>
+ core::cmp::Ord
+ core::ops::Neg<Output = Self>
+ num_traits::Zero
+ core::ops::AddAssign
+ ark_serialize::CanonicalSerialize + ark_std::UniformRand + num_traits::Inv<Output = Option<Self>> + core::ops::SubAssign
+ super::ref_into::RefInto<[u64; 4]>
+ for<'a> core::convert::From<&'a String>
+ super::encode::VarInt
+ core::convert::From<String>
+ core::convert::From<i128>
+ core::convert::From<i64>
+ core::convert::From<i32>
+ core::convert::From<i16>
+ core::convert::From<bool>
+ core::convert::Into<BigInt>
+ TryFrom<BigInt, Error = ScalarConversionError>
{
const MAX_SIGNED: Self;
const ZERO: Self;
const ONE: Self;
const TWO: Self;
fn signed_cmp(&self, other: &Self) -> Ordering {
match *self - *other {
x if x.is_zero() => Ordering::Equal,
x if x > Self::MAX_SIGNED => Ordering::Less,
_ => Ordering::Greater,
}
}
}