Struct snarkvm_console_program::string::Integer
pub struct Integer<E, I>where
E: Environment,
I: IntegerType,{ /* private fields */ }
Implementations§
§impl<E, I> Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Integer<E, I>where E: Environment, I: IntegerType,
pub fn from_field_lossy(field: &Field<E>) -> Integer<E, I>
pub fn from_field_lossy(field: &Field<E>) -> Integer<E, I>
Casts an integer from a base field, with lossy truncation.
This method is commonly-used by hash-to-integer algorithms, where the hash output does not need to preserve the full base field.
§impl<E, I> Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Integer<E, I>where E: Environment, I: IntegerType,
Trait Implementations§
§impl<E, I> AbsChecked for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> AbsChecked for Integer<E, I>where E: Environment, I: IntegerType,
§fn abs_checked(self) -> <Integer<E, I> as AbsChecked>::Output
fn abs_checked(self) -> <Integer<E, I> as AbsChecked>::Output
Returns the absolute value
of self
.
type Output = Integer<E, I>
§impl<E, I> AbsWrapped for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> AbsWrapped for Integer<E, I>where E: Environment, I: IntegerType,
§fn abs_wrapped(self) -> <Integer<E, I> as AbsWrapped>::Output
fn abs_wrapped(self) -> <Integer<E, I> as AbsWrapped>::Output
Returns the absolute value
of self
.
type Output = Integer<E, I>
§impl<E, I> Add<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Add<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Add for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Add for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> AddAssign<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> AddAssign<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§fn add_assign(&mut self, other: &Integer<E, I>)
fn add_assign(&mut self, other: &Integer<E, I>)
Adds other
to self
.
§impl<E, I> AddAssign for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> AddAssign for Integer<E, I>where E: Environment, I: IntegerType,
§fn add_assign(&mut self, other: Integer<E, I>)
fn add_assign(&mut self, other: Integer<E, I>)
Adds other
to self
.
§impl<E, I> AddWrapped for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> AddWrapped for Integer<E, I>where E: Environment, I: IntegerType,
§fn add_wrapped(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as AddWrapped>::Output
fn add_wrapped( &self, other: &Integer<E, I> ) -> <Integer<E, I> as AddWrapped>::Output
Returns the sum
of self
and other
.
type Output = Integer<E, I>
§impl<E, I> BitAnd<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitAnd<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> BitAnd for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitAnd for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> BitAndAssign for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitAndAssign for Integer<E, I>where E: Environment, I: IntegerType,
§fn bitand_assign(&mut self, other: Integer<E, I>)
fn bitand_assign(&mut self, other: Integer<E, I>)
Performs the bitwise AND
of self
and other
and assigns the result to self
.
§impl<E, I> BitOr<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitOr<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> BitOr for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitOr for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> BitOrAssign for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitOrAssign for Integer<E, I>where E: Environment, I: IntegerType,
§fn bitor_assign(&mut self, other: Integer<E, I>)
fn bitor_assign(&mut self, other: Integer<E, I>)
Performs the bitwise OR
of self
and other
and assigns the result to self
.
§impl<E, I> BitXor<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitXor<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> BitXor for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitXor for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> BitXorAssign for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> BitXorAssign for Integer<E, I>where E: Environment, I: IntegerType,
§fn bitxor_assign(&mut self, other: Integer<E, I>)
fn bitxor_assign(&mut self, other: Integer<E, I>)
Performs the bitwise XOR
of self
and other
and assigns the result to self
.
source§impl<E: Environment, I: IntegerType> Cast<Address<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> Cast<Address<E>> for Integer<E, I>
source§fn cast(&self) -> Result<Address<E>>
fn cast(&self) -> Result<Address<E>>
Casts an Integer
to an Address
.
This operation converts the integer to a field element, and then attempts to recover the group element by treating the field element as an x-coordinate. The group element is then converted to an address.
To cast arbitrary integers to addresses, use Integer::cast_lossy
.
source§impl<E: Environment, I: IntegerType> Cast<Boolean<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> Cast<Boolean<E>> for Integer<E, I>
source§impl<E: Environment, I: IntegerType> Cast<Field<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> Cast<Field<E>> for Integer<E, I>
source§impl<E: Environment, I: IntegerType> Cast<Group<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> Cast<Group<E>> for Integer<E, I>
source§impl<E: Environment, I: IntegerType> Cast<Integer<E, I>> for Boolean<E>
impl<E: Environment, I: IntegerType> Cast<Integer<E, I>> for Boolean<E>
source§impl<E: Environment, I: IntegerType> Cast<Integer<E, I>> for Field<E>
impl<E: Environment, I: IntegerType> Cast<Integer<E, I>> for Field<E>
source§impl<E: Environment, I: IntegerType> Cast<Integer<E, I>> for Scalar<E>
impl<E: Environment, I: IntegerType> Cast<Integer<E, I>> for Scalar<E>
source§impl<E: Environment, I0: IntegerType, I1: IntegerType + TryFrom<I0>> Cast<Integer<E, I1>> for Integer<E, I0>
impl<E: Environment, I0: IntegerType, I1: IntegerType + TryFrom<I0>> Cast<Integer<E, I1>> for Integer<E, I0>
source§impl<E: Environment, I: IntegerType> Cast<Scalar<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> Cast<Scalar<E>> for Integer<E, I>
source§impl<E: Environment, I: IntegerType> CastLossy<Address<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> CastLossy<Address<E>> for Integer<E, I>
source§fn cast_lossy(&self) -> Address<E>
fn cast_lossy(&self) -> Address<E>
Casts an Integer
to an Address
.
This operation converts the integer into a field element, and then attempts to recover
the group element to construct the address. See the documentation of Field::cast_lossy
on the Group
type for more details.
source§impl<E: Environment, I: IntegerType> CastLossy<Boolean<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> CastLossy<Boolean<E>> for Integer<E, I>
source§fn cast_lossy(&self) -> Boolean<E>
fn cast_lossy(&self) -> Boolean<E>
Casts an Integer
to a Boolean
, with lossy truncation.
This operation returns the least significant bit of the field.
source§impl<E: Environment, I: IntegerType> CastLossy<Field<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> CastLossy<Field<E>> for Integer<E, I>
source§fn cast_lossy(&self) -> Field<E>
fn cast_lossy(&self) -> Field<E>
Casts an Integer
to a Field
.
This is safe because casting from an integer to a field is always lossless.
source§impl<E: Environment, I: IntegerType> CastLossy<Group<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> CastLossy<Group<E>> for Integer<E, I>
source§fn cast_lossy(&self) -> Group<E>
fn cast_lossy(&self) -> Group<E>
Casts an Integer
to a Group
.
This operation converts the integer into a field element, and then attempts to recover
the group element. See the documentation of Field::cast_lossy
on the Group
type
for more details.
source§impl<E: Environment, I: IntegerType> CastLossy<Integer<E, I>> for Boolean<E>
impl<E: Environment, I: IntegerType> CastLossy<Integer<E, I>> for Boolean<E>
source§fn cast_lossy(&self) -> Integer<E, I>
fn cast_lossy(&self) -> Integer<E, I>
Casts a Boolean
to an Integer
.
source§impl<E: Environment, I: IntegerType> CastLossy<Integer<E, I>> for Field<E>
impl<E: Environment, I: IntegerType> CastLossy<Integer<E, I>> for Field<E>
source§fn cast_lossy(&self) -> Integer<E, I>
fn cast_lossy(&self) -> Integer<E, I>
Casts a Field
to an Integer
, with lossy truncation.
This operation truncates the field to an integer.
source§impl<E: Environment, I: IntegerType> CastLossy<Integer<E, I>> for Scalar<E>
impl<E: Environment, I: IntegerType> CastLossy<Integer<E, I>> for Scalar<E>
source§fn cast_lossy(&self) -> Integer<E, I>
fn cast_lossy(&self) -> Integer<E, I>
Casts a Scalar
to an Integer
, with lossy truncation.
source§impl<E: Environment, I0: IntegerType + AsPrimitive<I1>, I1: IntegerType> CastLossy<Integer<E, I1>> for Integer<E, I0>
impl<E: Environment, I0: IntegerType + AsPrimitive<I1>, I1: IntegerType> CastLossy<Integer<E, I1>> for Integer<E, I0>
source§fn cast_lossy(&self) -> Integer<E, I1>
fn cast_lossy(&self) -> Integer<E, I1>
Casts an Integer
to an Integer
of a different type, with lossy truncation.
source§impl<E: Environment, I: IntegerType> CastLossy<Scalar<E>> for Integer<E, I>
impl<E: Environment, I: IntegerType> CastLossy<Scalar<E>> for Integer<E, I>
source§fn cast_lossy(&self) -> Scalar<E>
fn cast_lossy(&self) -> Scalar<E>
Casts an Integer
to a Scalar
.
This is safe because casting from an integer to a scalar is always lossless.
§impl<E, I> Clone for Integer<E, I>where
E: Clone + Environment,
I: Clone + IntegerType,
impl<E, I> Clone for Integer<E, I>where E: Clone + Environment, I: Clone + IntegerType,
§impl<E, I> Compare for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Compare for Integer<E, I>where E: Environment, I: IntegerType,
§fn is_less_than(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as Compare>::Output
fn is_less_than( &self, other: &Integer<E, I> ) -> <Integer<E, I> as Compare>::Output
Returns true
if self
is less than other
.
§fn is_greater_than(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as Compare>::Output
fn is_greater_than( &self, other: &Integer<E, I> ) -> <Integer<E, I> as Compare>::Output
Returns true
if self
is greater than other
.
§fn is_less_than_or_equal(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as Compare>::Output
fn is_less_than_or_equal( &self, other: &Integer<E, I> ) -> <Integer<E, I> as Compare>::Output
Returns true
if self
is less than or equal to other
.
§fn is_greater_than_or_equal(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as Compare>::Output
fn is_greater_than_or_equal( &self, other: &Integer<E, I> ) -> <Integer<E, I> as Compare>::Output
Returns true
if self
is greater than or equal to other
.
type Output = Boolean<E>
§impl<E, I> Debug for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Debug for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Deref for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Deref for Integer<E, I>where E: Environment, I: IntegerType,
§impl<'de, E, I> Deserialize<'de> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<'de, E, I> Deserialize<'de> for Integer<E, I>where E: Environment, I: IntegerType,
§fn deserialize<D>(
deserializer: D
) -> Result<Integer<E, I>, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>( deserializer: D ) -> Result<Integer<E, I>, <D as Deserializer<'de>>::Error>where D: Deserializer<'de>,
Deserializes the integer from a string or bytes.
§impl<E, I> Display for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Display for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Distribution<Integer<E, I>> for Standardwhere
E: Environment,
I: IntegerType,
impl<E, I> Distribution<Integer<E, I>> for Standardwhere E: Environment, I: IntegerType,
§fn sample<R>(&self, rng: &mut R) -> Integer<E, I>where
R: Rng + ?Sized,
fn sample<R>(&self, rng: &mut R) -> Integer<E, I>where R: Rng + ?Sized,
T
, using rng
as the source of randomness.§impl<E, I> Div<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Div<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Div for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Div for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> DivAssign<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> DivAssign<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§fn div_assign(&mut self, other: &Integer<E, I>)
fn div_assign(&mut self, other: &Integer<E, I>)
Divides self
by other
.
§impl<E, I> DivAssign for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> DivAssign for Integer<E, I>where E: Environment, I: IntegerType,
§fn div_assign(&mut self, other: Integer<E, I>)
fn div_assign(&mut self, other: Integer<E, I>)
Divides self
by other
.
§impl<E, I> DivWrapped for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> DivWrapped for Integer<E, I>where E: Environment, I: IntegerType,
§fn div_wrapped(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as DivWrapped>::Output
fn div_wrapped( &self, other: &Integer<E, I> ) -> <Integer<E, I> as DivWrapped>::Output
Returns the quotient
of self
and other
.
type Output = Integer<E, I>
§impl<E, I> Equal for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Equal for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> FromBits for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> FromBits for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> FromBytes for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> FromBytes for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> FromField for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> FromField for Integer<E, I>where E: Environment, I: IntegerType,
§fn from_field(
field: &<Integer<E, I> as FromField>::Field
) -> Result<Integer<E, I>, Error>
fn from_field( field: &<Integer<E, I> as FromField>::Field ) -> Result<Integer<E, I>, Error>
Casts an integer from a base field.
This method guarantees the following:
- If the field element is larger than the integer domain, then the operation will fail.
- If the field element is smaller than the integer domain, then the operation will succeed.
type Field = Field<E>
§impl<E, I> FromFields for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> FromFields for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> FromStr for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> FromStr for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Hash for Integer<E, I>where
E: Hash + Environment,
I: Hash + IntegerType,
impl<E, I> Hash for Integer<E, I>where E: Hash + Environment, I: Hash + IntegerType,
§impl<E, I> Modulo for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Modulo for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Mul<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Mul<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Mul for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Mul for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> MulAssign<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> MulAssign<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§fn mul_assign(&mut self, other: &Integer<E, I>)
fn mul_assign(&mut self, other: &Integer<E, I>)
Multiplies self
by other
.
§impl<E, I> MulAssign for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> MulAssign for Integer<E, I>where E: Environment, I: IntegerType,
§fn mul_assign(&mut self, other: Integer<E, I>)
fn mul_assign(&mut self, other: Integer<E, I>)
Multiplies self
by other
.
§impl<E, I> MulWrapped for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> MulWrapped for Integer<E, I>where E: Environment, I: IntegerType,
§fn mul_wrapped(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as MulWrapped>::Output
fn mul_wrapped( &self, other: &Integer<E, I> ) -> <Integer<E, I> as MulWrapped>::Output
Returns the product
of self
and other
.
type Output = Integer<E, I>
§impl<E, I> Neg for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Neg for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Not for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Not for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> One for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> One for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Ord for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Ord for Integer<E, I>where E: Environment, I: IntegerType,
§fn cmp(&self, other: &Integer<E, I>) -> Ordering
fn cmp(&self, other: &Integer<E, I>) -> Ordering
Returns the lexicographic ordering of self
and other
.
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
§impl<E, I> Parser for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Parser for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> PartialEq for Integer<E, I>where
E: PartialEq + Environment,
I: PartialEq + IntegerType,
impl<E, I> PartialEq for Integer<E, I>where E: PartialEq + Environment, I: PartialEq + IntegerType,
§impl<E, I> PartialOrd for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> PartialOrd for Integer<E, I>where E: Environment, I: IntegerType,
§fn partial_cmp(&self, other: &Integer<E, I>) -> Option<Ordering>
fn partial_cmp(&self, other: &Integer<E, I>) -> Option<Ordering>
Returns the lexicographic ordering of self
and other
.
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more§impl<E, I, M> Pow<&Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> Pow<&Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§impl<E, I, M> Pow<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> Pow<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§impl<E, I, M> PowWrapped<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> PowWrapped<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§fn pow_wrapped(
&self,
other: &Integer<E, M>
) -> <Integer<E, I> as PowWrapped<Integer<E, M>>>::Output
fn pow_wrapped( &self, other: &Integer<E, M> ) -> <Integer<E, I> as PowWrapped<Integer<E, M>>>::Output
Returns the power
of self
to the power of other
.
type Output = Integer<E, I>
§impl<E, I> Rem<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Rem<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Rem for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Rem for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> RemAssign<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> RemAssign<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§fn rem_assign(&mut self, other: &Integer<E, I>)
fn rem_assign(&mut self, other: &Integer<E, I>)
Returns the remainder
of self
divided by other
.
§impl<E, I> RemAssign for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> RemAssign for Integer<E, I>where E: Environment, I: IntegerType,
§fn rem_assign(&mut self, other: Integer<E, I>)
fn rem_assign(&mut self, other: Integer<E, I>)
Returns the remainder
of self
divided by other
.
§impl<E, I> RemWrapped for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> RemWrapped for Integer<E, I>where E: Environment, I: IntegerType,
§fn rem_wrapped(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as RemWrapped>::Output
fn rem_wrapped( &self, other: &Integer<E, I> ) -> <Integer<E, I> as RemWrapped>::Output
Returns the remainder
of self
divided by other
.
type Output = Integer<E, I>
§impl<E, I> Serialize for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Serialize for Integer<E, I>where E: Environment, I: IntegerType,
§fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>( &self, serializer: S ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where S: Serializer,
Serializes the integer into a string or as bytes.
§impl<E, I, M> Shl<&Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> Shl<&Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§impl<E, I, M> Shl<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> Shl<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§impl<E, I, M> ShlAssign<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> ShlAssign<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§fn shl_assign(&mut self, n: Integer<E, M>)
fn shl_assign(&mut self, n: Integer<E, M>)
Shifts self
to the left by n
bits and assigns the result to self
.
§impl<E, I, M> ShlChecked<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> ShlChecked<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§fn shl_checked(
&self,
n: &Integer<E, M>
) -> <Integer<E, I> as ShlChecked<Integer<E, M>>>::Output
fn shl_checked( &self, n: &Integer<E, M> ) -> <Integer<E, I> as ShlChecked<Integer<E, M>>>::Output
Shifts self
to the left by n
bits.
type Output = Integer<E, I>
§impl<E, I, M> ShlWrapped<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> ShlWrapped<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§fn shl_wrapped(
&self,
n: &Integer<E, M>
) -> <Integer<E, I> as ShlWrapped<Integer<E, M>>>::Output
fn shl_wrapped( &self, n: &Integer<E, M> ) -> <Integer<E, I> as ShlWrapped<Integer<E, M>>>::Output
Shifts self
to the left by n
bits, continuing past the boundary.
type Output = Integer<E, I>
§impl<E, I, M> Shr<&Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> Shr<&Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§impl<E, I, M> Shr<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> Shr<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§impl<E, I, M> ShrAssign<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> ShrAssign<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§fn shr_assign(&mut self, n: Integer<E, M>)
fn shr_assign(&mut self, n: Integer<E, M>)
Shifts self
to the right by n
bits and assigns the result to self
.
§impl<E, I, M> ShrChecked<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> ShrChecked<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§fn shr_checked(
&self,
n: &Integer<E, M>
) -> <Integer<E, I> as ShrChecked<Integer<E, M>>>::Output
fn shr_checked( &self, n: &Integer<E, M> ) -> <Integer<E, I> as ShrChecked<Integer<E, M>>>::Output
Shifts self
to the right by n
bits.
type Output = Integer<E, I>
§impl<E, I, M> ShrWrapped<Integer<E, M>> for Integer<E, I>where
E: Environment,
I: IntegerType,
M: Magnitude,
impl<E, I, M> ShrWrapped<Integer<E, M>> for Integer<E, I>where E: Environment, I: IntegerType, M: Magnitude,
§fn shr_wrapped(
&self,
n: &Integer<E, M>
) -> <Integer<E, I> as ShrWrapped<Integer<E, M>>>::Output
fn shr_wrapped( &self, n: &Integer<E, M> ) -> <Integer<E, I> as ShrWrapped<Integer<E, M>>>::Output
Shifts self
to the right by n
bits, continuing past the boundary.
type Output = Integer<E, I>
§impl<E, I> SizeInBits for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> SizeInBits for Integer<E, I>where E: Environment, I: IntegerType,
§fn size_in_bits() -> usize
fn size_in_bits() -> usize
Returns the integer size in bits.
§impl<E, I> SizeInBytes for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> SizeInBytes for Integer<E, I>where E: Environment, I: IntegerType,
§fn size_in_bytes() -> usize
fn size_in_bytes() -> usize
Returns the integer size in bytes.
§impl<E, I> Square for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Square for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Sub<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Sub<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Sub for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Sub for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> SubAssign<&Integer<E, I>> for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> SubAssign<&Integer<E, I>> for Integer<E, I>where E: Environment, I: IntegerType,
§fn sub_assign(&mut self, other: &Integer<E, I>)
fn sub_assign(&mut self, other: &Integer<E, I>)
Subtracts other
from self
.
§impl<E, I> SubAssign for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> SubAssign for Integer<E, I>where E: Environment, I: IntegerType,
§fn sub_assign(&mut self, other: Integer<E, I>)
fn sub_assign(&mut self, other: Integer<E, I>)
Subtracts other
from self
.
§impl<E, I> SubWrapped for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> SubWrapped for Integer<E, I>where E: Environment, I: IntegerType,
§fn sub_wrapped(
&self,
other: &Integer<E, I>
) -> <Integer<E, I> as SubWrapped>::Output
fn sub_wrapped( &self, other: &Integer<E, I> ) -> <Integer<E, I> as SubWrapped>::Output
Returns the difference
of self
and other
.
type Output = Integer<E, I>
§impl<E, I> Ternary for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Ternary for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> ToBits for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> ToBits for Integer<E, I>where E: Environment, I: IntegerType,
§fn write_bits_le(&self, vec: &mut Vec<bool>)
fn write_bits_le(&self, vec: &mut Vec<bool>)
Outputs the little-endian bit representation of self
without trailing zeros.
§fn write_bits_be(&self, vec: &mut Vec<bool>)
fn write_bits_be(&self, vec: &mut Vec<bool>)
Outputs the big-endian bit representation of self
without leading zeros.
source§fn to_bits_le(&self) -> Vec<bool>
fn to_bits_le(&self) -> Vec<bool>
self
as a boolean array in little-endian order.source§fn to_bits_be(&self) -> Vec<bool>
fn to_bits_be(&self) -> Vec<bool>
self
as a boolean array in big-endian order.§impl<E, I> ToBytes for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> ToBytes for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> ToField for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> ToField for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> ToFields for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> ToFields for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> TypeName for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> TypeName for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Visibility for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Visibility for Integer<E, I>where E: Environment, I: IntegerType,
§impl<E, I> Zero for Integer<E, I>where
E: Environment,
I: IntegerType,
impl<E, I> Zero for Integer<E, I>where E: Environment, I: IntegerType,
impl<E, I> Copy for Integer<E, I>where E: Copy + Environment, I: Copy + IntegerType,
impl<E, I> Eq for Integer<E, I>where E: Eq + Environment, I: Eq + IntegerType,
impl<E, I> IntegerCore<I> for Integer<E, I>where E: Environment, I: IntegerType,
impl<E, I> IntegerTrait<I, Integer<E, u8>, Integer<E, u16>, Integer<E, u32>> for Integer<E, I>where E: Environment, I: IntegerType,
impl<E, I> StructuralEq for Integer<E, I>where E: Environment, I: IntegerType,
impl<E, I> StructuralPartialEq for Integer<E, I>where E: Environment, I: IntegerType,
Auto Trait Implementations§
impl<E, I> RefUnwindSafe for Integer<E, I>where E: RefUnwindSafe, I: RefUnwindSafe,
impl<E, I> Send for Integer<E, I>
impl<E, I> Sync for Integer<E, I>
impl<E, I> Unpin for Integer<E, I>where E: Unpin, I: Unpin,
impl<E, I> UnwindSafe for Integer<E, I>where E: UnwindSafe, I: UnwindSafe,
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
source§impl<'de, T> DeserializeExt<'de> for Twhere
T: DeserializeOwned,
impl<'de, T> DeserializeExt<'de> for Twhere T: DeserializeOwned,
fn take_from_value<D>( value: &mut Value, field: &str ) -> Result<T, <D as Deserializer<'de>>::Error>where D: Deserializer<'de>,
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.