Trait snarkvm_debug::prelude::string::SubAssign

1.8.0 · source ·
pub trait SubAssign<Rhs = Self> {
    // Required method
    fn sub_assign(&mut self, rhs: Rhs);
}
Expand description

The subtraction assignment operator -=.

Examples

This example creates a Point struct that implements the SubAssign trait, and then demonstrates sub-assigning to a mutable Point.

use std::ops::SubAssign;

#[derive(Debug, Copy, Clone, PartialEq)]
struct Point {
    x: i32,
    y: i32,
}

impl SubAssign for Point {
    fn sub_assign(&mut self, other: Self) {
        *self = Self {
            x: self.x - other.x,
            y: self.y - other.y,
        };
    }
}

let mut point = Point { x: 3, y: 3 };
point -= Point { x: 2, y: 3 };
assert_eq!(point, Point {x: 1, y: 0});

Required Methods§

source

fn sub_assign(&mut self, rhs: Rhs)

Performs the -= operation.

Example
let mut x: u32 = 12;
x -= 1;
assert_eq!(x, 11);

Implementors§

source§

impl SubAssign for f32

source§

impl SubAssign for f64

source§

impl SubAssign for i8

source§

impl SubAssign for i16

source§

impl SubAssign for i32

source§

impl SubAssign for i64

source§

impl SubAssign for i128

source§

impl SubAssign for isize

source§

impl SubAssign for u8

source§

impl SubAssign for u16

source§

impl SubAssign for u32

source§

impl SubAssign for u64

source§

impl SubAssign for u128

source§

impl SubAssign for usize

1.74.0 · source§

impl SubAssign for Saturating<i8>

1.74.0 · source§

impl SubAssign for Saturating<i16>

1.74.0 · source§

impl SubAssign for Saturating<i32>

1.74.0 · source§

impl SubAssign for Saturating<i64>

1.74.0 · source§

impl SubAssign for Saturating<i128>

1.74.0 · source§

impl SubAssign for Saturating<isize>

1.74.0 · source§

impl SubAssign for Saturating<u8>

1.74.0 · source§

impl SubAssign for Saturating<u16>

1.74.0 · source§

impl SubAssign for Saturating<u32>

1.74.0 · source§

impl SubAssign for Saturating<u64>

1.74.0 · source§

impl SubAssign for Saturating<u128>

1.74.0 · source§

impl SubAssign for Saturating<usize>

source§

impl SubAssign for Wrapping<i8>

source§

impl SubAssign for Wrapping<i16>

source§

impl SubAssign for Wrapping<i32>

source§

impl SubAssign for Wrapping<i64>

source§

impl SubAssign for Wrapping<i128>

source§

impl SubAssign for Wrapping<isize>

source§

impl SubAssign for Wrapping<u8>

source§

impl SubAssign for Wrapping<u16>

source§

impl SubAssign for Wrapping<u32>

source§

impl SubAssign for Wrapping<u64>

source§

impl SubAssign for Wrapping<u128>

source§

impl SubAssign for Wrapping<usize>

1.9.0 · source§

impl SubAssign for core::time::Duration

source§

impl SubAssign for Effects

Examples

let mut effects = anstyle::Effects::BOLD | anstyle::Effects::UNDERLINE;
effects -= anstyle::Effects::BOLD;
assert_eq!(format!("{:?}", effects), "Effects(UNDERLINE)");
source§

impl SubAssign for BigInt

source§

impl SubAssign for BigUint

source§

impl SubAssign for CipherCtxFlags

source§

impl SubAssign for CMSOptions

source§

impl SubAssign for OcspFlag

source§

impl SubAssign for Pkcs7Flags

source§

impl SubAssign for ExtensionContext

source§

impl SubAssign for ShutdownState

source§

impl SubAssign for SslMode

source§

impl SubAssign for SslOptions

source§

impl SubAssign for SslSessionCacheMode

source§

impl SubAssign for SslVerifyMode

source§

impl SubAssign for X509CheckFlags

source§

impl SubAssign for X509VerifyFlags

§

impl SubAssign for Access

§

impl SubAssign for AtFlags

§

impl SubAssign for ControlModes

§

impl SubAssign for CreateFlags

§

impl SubAssign for DupFlags

§

impl SubAssign for Duration

§

impl SubAssign for FallocateFlags

§

impl SubAssign for FdFlags

§

impl SubAssign for InputModes

§

impl SubAssign for LocalModes

§

impl SubAssign for MemfdFlags

§

impl SubAssign for Mode

§

impl SubAssign for MountFlags

§

impl SubAssign for MountPropagationFlags

§

impl SubAssign for OFlags

§

impl SubAssign for OutputModes

§

impl SubAssign for ReadWriteFlags

§

impl SubAssign for RenameFlags

§

impl SubAssign for ResolveFlags

§

impl SubAssign for SealFlags

§

impl SubAssign for StatVfsMountFlags

§

impl SubAssign for StatxFlags

§

impl SubAssign for UnmountFlags

§

impl SubAssign for WatchFlags

§

impl SubAssign for XattrFlags

1.22.0 · source§

impl SubAssign<&f32> for f32

1.22.0 · source§

impl SubAssign<&f64> for f64

1.22.0 · source§

impl SubAssign<&i8> for i8

1.22.0 · source§

impl SubAssign<&i8> for Saturating<i8>

1.22.0 · source§

impl SubAssign<&i8> for Wrapping<i8>

1.22.0 · source§

impl SubAssign<&i16> for i16

1.22.0 · source§

impl SubAssign<&i16> for Saturating<i16>

1.22.0 · source§

impl SubAssign<&i16> for Wrapping<i16>

1.22.0 · source§

impl SubAssign<&i32> for i32

1.22.0 · source§

impl SubAssign<&i32> for Saturating<i32>

1.22.0 · source§

impl SubAssign<&i32> for Wrapping<i32>

1.22.0 · source§

impl SubAssign<&i64> for i64

1.22.0 · source§

impl SubAssign<&i64> for Saturating<i64>

1.22.0 · source§

impl SubAssign<&i64> for Wrapping<i64>

1.22.0 · source§

impl SubAssign<&i128> for i128

1.22.0 · source§

impl SubAssign<&i128> for Saturating<i128>

1.22.0 · source§

impl SubAssign<&i128> for Wrapping<i128>

1.22.0 · source§

impl SubAssign<&isize> for isize

1.22.0 · source§

impl SubAssign<&isize> for Saturating<isize>

1.22.0 · source§

impl SubAssign<&isize> for Wrapping<isize>

1.22.0 · source§

impl SubAssign<&u8> for u8

1.22.0 · source§

impl SubAssign<&u8> for Saturating<u8>

1.22.0 · source§

impl SubAssign<&u8> for Wrapping<u8>

1.22.0 · source§

impl SubAssign<&u16> for u16

1.22.0 · source§

impl SubAssign<&u16> for Saturating<u16>

1.22.0 · source§

impl SubAssign<&u16> for Wrapping<u16>

1.22.0 · source§

impl SubAssign<&u32> for u32

1.22.0 · source§

impl SubAssign<&u32> for Saturating<u32>

1.22.0 · source§

impl SubAssign<&u32> for Wrapping<u32>

1.22.0 · source§

impl SubAssign<&u64> for u64

1.22.0 · source§

impl SubAssign<&u64> for Saturating<u64>

1.22.0 · source§

impl SubAssign<&u64> for Wrapping<u64>

1.22.0 · source§

impl SubAssign<&u128> for u128

1.22.0 · source§

impl SubAssign<&u128> for Saturating<u128>

1.22.0 · source§

impl SubAssign<&u128> for Wrapping<u128>

1.22.0 · source§

impl SubAssign<&usize> for usize

1.22.0 · source§

impl SubAssign<&usize> for Saturating<usize>

1.22.0 · source§

impl SubAssign<&usize> for Wrapping<usize>

1.22.0 · source§

impl SubAssign<&Saturating<i8>> for Saturating<i8>

1.22.0 · source§

impl SubAssign<&Saturating<i16>> for Saturating<i16>

1.22.0 · source§

impl SubAssign<&Saturating<i32>> for Saturating<i32>

1.22.0 · source§

impl SubAssign<&Saturating<i64>> for Saturating<i64>

1.22.0 · source§

impl SubAssign<&Saturating<i128>> for Saturating<i128>

1.22.0 · source§

impl SubAssign<&Saturating<isize>> for Saturating<isize>

1.22.0 · source§

impl SubAssign<&Saturating<u8>> for Saturating<u8>

1.22.0 · source§

impl SubAssign<&Saturating<u16>> for Saturating<u16>

1.22.0 · source§

impl SubAssign<&Saturating<u32>> for Saturating<u32>

1.22.0 · source§

impl SubAssign<&Saturating<u64>> for Saturating<u64>

1.22.0 · source§

impl SubAssign<&Saturating<u128>> for Saturating<u128>

1.22.0 · source§

impl SubAssign<&Saturating<usize>> for Saturating<usize>

1.22.0 · source§

impl SubAssign<&Wrapping<i8>> for Wrapping<i8>

1.22.0 · source§

impl SubAssign<&Wrapping<i16>> for Wrapping<i16>

1.22.0 · source§

impl SubAssign<&Wrapping<i32>> for Wrapping<i32>

1.22.0 · source§

impl SubAssign<&Wrapping<i64>> for Wrapping<i64>

1.22.0 · source§

impl SubAssign<&Wrapping<i128>> for Wrapping<i128>

1.22.0 · source§

impl SubAssign<&Wrapping<isize>> for Wrapping<isize>

1.22.0 · source§

impl SubAssign<&Wrapping<u8>> for Wrapping<u8>

1.22.0 · source§

impl SubAssign<&Wrapping<u16>> for Wrapping<u16>

1.22.0 · source§

impl SubAssign<&Wrapping<u32>> for Wrapping<u32>

1.22.0 · source§

impl SubAssign<&Wrapping<u64>> for Wrapping<u64>

1.22.0 · source§

impl SubAssign<&Wrapping<u128>> for Wrapping<u128>

1.22.0 · source§

impl SubAssign<&Wrapping<usize>> for Wrapping<usize>

source§

impl SubAssign<&BigInt> for BigInt

source§

impl SubAssign<&BigUint> for BigUint

1.74.0 · source§

impl SubAssign<i8> for Saturating<i8>

1.60.0 · source§

impl SubAssign<i8> for Wrapping<i8>

source§

impl SubAssign<i8> for BigInt

1.74.0 · source§

impl SubAssign<i16> for Saturating<i16>

1.60.0 · source§

impl SubAssign<i16> for Wrapping<i16>

source§

impl SubAssign<i16> for BigInt

1.74.0 · source§

impl SubAssign<i32> for Saturating<i32>

1.60.0 · source§

impl SubAssign<i32> for Wrapping<i32>

source§

impl SubAssign<i32> for BigInt

1.74.0 · source§

impl SubAssign<i64> for Saturating<i64>

1.60.0 · source§

impl SubAssign<i64> for Wrapping<i64>

source§

impl SubAssign<i64> for BigInt

1.74.0 · source§

impl SubAssign<i128> for Saturating<i128>

1.60.0 · source§

impl SubAssign<i128> for Wrapping<i128>

source§

impl SubAssign<i128> for BigInt

1.74.0 · source§

impl SubAssign<isize> for Saturating<isize>

1.60.0 · source§

impl SubAssign<isize> for Wrapping<isize>

source§

impl SubAssign<isize> for BigInt

1.74.0 · source§

impl SubAssign<u8> for Saturating<u8>

1.60.0 · source§

impl SubAssign<u8> for Wrapping<u8>

source§

impl SubAssign<u8> for BigInt

source§

impl SubAssign<u8> for BigUint

1.74.0 · source§

impl SubAssign<u16> for Saturating<u16>

1.60.0 · source§

impl SubAssign<u16> for Wrapping<u16>

source§

impl SubAssign<u16> for BigInt

source§

impl SubAssign<u16> for BigUint

1.74.0 · source§

impl SubAssign<u32> for Saturating<u32>

1.60.0 · source§

impl SubAssign<u32> for Wrapping<u32>

source§

impl SubAssign<u32> for BigInt

source§

impl SubAssign<u32> for BigUint

1.74.0 · source§

impl SubAssign<u64> for Saturating<u64>

1.60.0 · source§

impl SubAssign<u64> for Wrapping<u64>

source§

impl SubAssign<u64> for BigInt

source§

impl SubAssign<u64> for BigUint

1.74.0 · source§

impl SubAssign<u128> for Saturating<u128>

1.60.0 · source§

impl SubAssign<u128> for Wrapping<u128>

source§

impl SubAssign<u128> for BigInt

source§

impl SubAssign<u128> for BigUint

1.74.0 · source§

impl SubAssign<usize> for Saturating<usize>

1.60.0 · source§

impl SubAssign<usize> for Wrapping<usize>

source§

impl SubAssign<usize> for BigInt

source§

impl SubAssign<usize> for BigUint

1.9.0 · source§

impl SubAssign<Duration> for std::time::Instant

1.9.0 · source§

impl SubAssign<Duration> for SystemTime

§

impl SubAssign<Duration> for Date

§

impl SubAssign<Duration> for Duration

§

impl SubAssign<Duration> for Instant

§

impl SubAssign<Duration> for Instant

§

impl SubAssign<Duration> for OffsetDateTime

§

impl SubAssign<Duration> for PrimitiveDateTime

§

impl SubAssign<Duration> for Time

source§

impl SubAssign<Effects> for Style

Examples

let mut style = anstyle::Style::new().bold().underline();
style -= anstyle::Effects::BOLD.into();
§

impl SubAssign<Duration> for core::time::Duration

§

impl SubAssign<Duration> for std::time::Instant

§

impl SubAssign<Duration> for SystemTime

§

impl SubAssign<Duration> for Date

§

impl SubAssign<Duration> for Instant

§

impl SubAssign<Duration> for OffsetDateTime

§

impl SubAssign<Duration> for PrimitiveDateTime

§

impl SubAssign<Duration> for Time

§

impl<'a, F> SubAssign<&'a DensePolynomial<F>> for DensePolynomial<F>
where F: Field,

§

impl<'a, F> SubAssign<&'a Evaluations<F>> for Evaluations<F>
where F: PrimeField,

§

impl<'a, F> SubAssign<&'a LinearCombination<F>> for LinearCombination<F>
where F: Field,

§

impl<'a, F> SubAssign<(F, &'a LinearCombination<F>)> for LinearCombination<F>
where F: Field,

§

impl<'a, P> SubAssign<&'a Fp2<P>> for Fp2<P>
where P: Fp2Parameters,

§

impl<'a, P> SubAssign<&'a Fp6<P>> for Fp6<P>
where P: Fp6Parameters,

§

impl<'a, P> SubAssign<&'a Fp12<P>> for Fp12<P>
where P: Fp12Parameters,

§

impl<'a, P> SubAssign<&'a Fp256<P>> for Fp256<P>
where P: Fp256Parameters,

§

impl<'a, P> SubAssign<&'a Fp384<P>> for Fp384<P>
where P: Fp384Parameters,

§

impl<'a, P> SubAssign<&'a Projective<P>> for Projective<P>

§

impl<'a, P> SubAssign<&'a Projective<P>> for Projective<P>
where P: ShortWeierstrassParameters,

§

impl<'a, P> SubAssign<&'a mut Fp2<P>> for Fp2<P>
where P: Fp2Parameters,

§

impl<'a, P> SubAssign<&'a mut Fp6<P>> for Fp6<P>
where P: Fp6Parameters,

§

impl<'a, P> SubAssign<&'a mut Fp12<P>> for Fp12<P>
where P: Fp12Parameters,

§

impl<'a, P> SubAssign<&'a mut Fp256<P>> for Fp256<P>
where P: Fp256Parameters,

§

impl<'a, P> SubAssign<&'a mut Fp384<P>> for Fp384<P>
where P: Fp384Parameters,

§

impl<'a, P> SubAssign<&'a mut Projective<P>> for Projective<P>

§

impl<'a, P> SubAssign<&'a mut Projective<P>> for Projective<P>
where P: ShortWeierstrassParameters,

§

impl<E> SubAssign for snarkvm_debug::prelude::group::Group<E>
where E: Environment,

§

impl<E> SubAssign for Scalar<E>
where E: Environment,

§

impl<E> SubAssign for snarkvm_debug::prelude::string::Field<E>
where E: Environment,

§

impl<E> SubAssign for Field<E>
where E: Environment,

§

impl<E> SubAssign for Group<E>
where E: Environment,

§

impl<E> SubAssign<&Group<E>> for snarkvm_debug::prelude::group::Group<E>
where E: Environment,

§

impl<E> SubAssign<&Scalar<E>> for Scalar<E>
where E: Environment,

§

impl<E> SubAssign<&Field<E>> for snarkvm_debug::prelude::string::Field<E>
where E: Environment,

§

impl<E> SubAssign<&Field<E>> for Field<E>
where E: Environment,

§

impl<E> SubAssign<&Group<E>> for Group<E>
where E: Environment,

§

impl<E, I> SubAssign for snarkvm_debug::prelude::string::Integer<E, I>
where E: Environment, I: IntegerType,

§

impl<E, I> SubAssign for Integer<E, I>
where E: Environment, I: IntegerType,

§

impl<E, I> SubAssign<&Integer<E, I>> for snarkvm_debug::prelude::string::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<F> SubAssign<F> for LinearCombination<F>
where F: Field,

§

impl<P> SubAssign for Fp2<P>
where P: Fp2Parameters,

§

impl<P> SubAssign for Fp6<P>
where P: Fp6Parameters,

§

impl<P> SubAssign for Fp12<P>
where P: Fp12Parameters,

§

impl<P> SubAssign for Fp256<P>
where P: Fp256Parameters,

§

impl<P> SubAssign for Fp384<P>
where P: Fp384Parameters,

§

impl<P> SubAssign for Projective<P>

§

impl<P> SubAssign for Projective<P>
where P: ShortWeierstrassParameters,

§

impl<P> SubAssign<&&Fp2<P>> for Fp2<P>
where P: Fp2Parameters,

§

impl<P> SubAssign<&&Fp6<P>> for Fp6<P>
where P: Fp6Parameters,

§

impl<P> SubAssign<&&Fp12<P>> for Fp12<P>
where P: Fp12Parameters,

§

impl<P> SubAssign<&&Fp256<P>> for Fp256<P>
where P: Fp256Parameters,

§

impl<P> SubAssign<&&Fp384<P>> for Fp384<P>
where P: Fp384Parameters,

§

impl<P> SubAssign<&&Projective<P>> for Projective<P>

§

impl<P> SubAssign<&&Projective<P>> for Projective<P>
where P: ShortWeierstrassParameters,

source§

impl<T, U, const N: usize> SubAssign<U> for Simd<T, N>
where Simd<T, N>: Sub<U, Output = Simd<T, N>>, T: SimdElement, LaneCount<N>: SupportedLaneCount,