Sub

Trait Sub 

1.6.0 (const: unstable) · Source
pub trait Sub<Rhs = Self> {
    type Output;

    // Required method
    fn sub(self, rhs: Rhs) -> Self::Output;
}
Expand description

The subtraction operator -.

Note that Rhs is Self by default, but this is not mandatory. For example, std::time::SystemTime implements Sub<Duration>, which permits operations of the form SystemTime = SystemTime - Duration.

§Examples

§Subtractable points

use std::ops::Sub;

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

impl Sub for Point {
    type Output = Self;

    fn sub(self, other: Self) -> Self::Output {
        Self {
            x: self.x - other.x,
            y: self.y - other.y,
        }
    }
}

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

§Implementing Sub with generics

Here is an example of the same Point struct implementing the Sub trait using generics.

use std::ops::Sub;

#[derive(Debug, PartialEq)]
struct Point<T> {
    x: T,
    y: T,
}

// Notice that the implementation uses the associated type `Output`.
impl<T: Sub<Output = T>> Sub for Point<T> {
    type Output = Self;

    fn sub(self, other: Self) -> Self::Output {
        Point {
            x: self.x - other.x,
            y: self.y - other.y,
        }
    }
}

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

Required Associated Types§

1.0.0 · Source

type Output

The resulting type after applying the - operator.

Required Methods§

1.0.0 · Source

fn sub(self, rhs: Rhs) -> Self::Output

Performs the - operation.

§Example
assert_eq!(12 - 1, 11);

Implementors§

1.0.0 (const: unstable) · Source§

impl Sub for f16

1.0.0 (const: unstable) · Source§

impl Sub for f32

1.0.0 (const: unstable) · Source§

impl Sub for f64

1.0.0 (const: unstable) · Source§

impl Sub for f128

1.0.0 (const: unstable) · Source§

impl Sub for i8

1.0.0 (const: unstable) · Source§

impl Sub for i16

1.0.0 (const: unstable) · Source§

impl Sub for i32

1.0.0 (const: unstable) · Source§

impl Sub for i64

1.0.0 (const: unstable) · Source§

impl Sub for i128

1.0.0 (const: unstable) · Source§

impl Sub for isize

1.0.0 (const: unstable) · Source§

impl Sub for u8

1.0.0 (const: unstable) · Source§

impl Sub for u16

1.0.0 (const: unstable) · Source§

impl Sub for u32

1.0.0 (const: unstable) · Source§

impl Sub for u64

1.0.0 (const: unstable) · Source§

impl Sub for u128

1.0.0 (const: unstable) · Source§

impl Sub for usize

Source§

impl Sub for Assume

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Sub for Saturating<usize>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<i8>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<i16>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<i32>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<i64>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<i128>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<isize>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<u8>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<u16>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<u32>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<u64>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<u128>

1.0.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::num::Wrapping<usize>

1.3.0 (const: unstable) · Source§

impl Sub for rosetta_server::crypto::bip39::core::time::Duration

1.8.0 · Source§

impl Sub for std::time::Instant

Source§

impl Sub for Effects

§Examples

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

impl Sub for Checked<Limb>

Source§

impl Sub for crypto_bigint::wrapping::Wrapping<Limb>

Source§

impl Sub for curve25519_dalek_ng::edwards::EdwardsPoint

Source§

impl Sub for curve25519_dalek_ng::ristretto::RistrettoPoint

Source§

impl Sub for curve25519_dalek_ng::scalar::Scalar

Source§

impl Sub for curve25519_dalek::edwards::EdwardsPoint

Source§

impl Sub for curve25519_dalek::edwards::EdwardsPoint

Source§

impl Sub for curve25519_dalek::ristretto::RistrettoPoint

Source§

impl Sub for curve25519_dalek::ristretto::RistrettoPoint

Source§

impl Sub for curve25519_dalek::scalar::Scalar

Source§

impl Sub for curve25519_dalek::scalar::Scalar

Source§

impl Sub for Length

Source§

impl Sub for k256::arithmetic::projective::ProjectivePoint

Source§

impl Sub for k256::arithmetic::scalar::Scalar

Source§

impl Sub for p256::arithmetic::scalar::Scalar

Source§

impl Sub for rustix::backend::event::epoll::CreateFlags

Source§

impl Sub for rustix::backend::event::epoll::EventFlags

Source§

impl Sub for rustix::backend::event::poll_fd::PollFlags

Source§

impl Sub for rustix::backend::event::types::EventfdFlags

Source§

impl Sub for rustix::backend::fs::inotify::CreateFlags

Source§

impl Sub for rustix::backend::fs::inotify::CreateFlags

Source§

impl Sub for ReadFlags

Source§

impl Sub for rustix::backend::fs::inotify::WatchFlags

Source§

impl Sub for rustix::backend::fs::inotify::WatchFlags

Source§

impl Sub for rustix::backend::fs::types::Access

Source§

impl Sub for rustix::backend::fs::types::Access

Source§

impl Sub for rustix::backend::fs::types::AtFlags

Source§

impl Sub for rustix::backend::fs::types::AtFlags

Source§

impl Sub for rustix::backend::fs::types::FallocateFlags

Source§

impl Sub for rustix::backend::fs::types::FallocateFlags

Source§

impl Sub for rustix::backend::fs::types::MemfdFlags

Source§

impl Sub for rustix::backend::fs::types::MemfdFlags

Source§

impl Sub for rustix::backend::fs::types::Mode

Source§

impl Sub for rustix::backend::fs::types::Mode

Source§

impl Sub for MountFlags

Source§

impl Sub for MountPropagationFlags

Source§

impl Sub for rustix::backend::fs::types::OFlags

Source§

impl Sub for rustix::backend::fs::types::OFlags

Source§

impl Sub for rustix::backend::fs::types::RenameFlags

Source§

impl Sub for rustix::backend::fs::types::RenameFlags

Source§

impl Sub for rustix::backend::fs::types::ResolveFlags

Source§

impl Sub for rustix::backend::fs::types::ResolveFlags

Source§

impl Sub for rustix::backend::fs::types::SealFlags

Source§

impl Sub for rustix::backend::fs::types::SealFlags

Source§

impl Sub for rustix::backend::fs::types::StatVfsMountFlags

Source§

impl Sub for rustix::backend::fs::types::StatVfsMountFlags

Source§

impl Sub for rustix::backend::fs::types::StatxFlags

Source§

impl Sub for UnmountFlags

Source§

impl Sub for rustix::backend::io::epoll::CreateFlags

Source§

impl Sub for rustix::backend::io::epoll::EventFlags

Source§

impl Sub for rustix::backend::io::poll_fd::PollFlags

Source§

impl Sub for rustix::backend::io::types::DupFlags

Source§

impl Sub for rustix::backend::io::types::DupFlags

Source§

impl Sub for rustix::backend::io::types::EventfdFlags

Source§

impl Sub for rustix::backend::io::types::FdFlags

Source§

impl Sub for rustix::backend::io::types::FdFlags

Source§

impl Sub for rustix::backend::io::types::PipeFlags

Source§

impl Sub for rustix::backend::io::types::ReadWriteFlags

Source§

impl Sub for rustix::backend::io::types::ReadWriteFlags

Source§

impl Sub for rustix::backend::io::types::SpliceFlags

Source§

impl Sub for RecvFlags

Source§

impl Sub for ReturnFlags

Source§

impl Sub for SendFlags

Source§

impl Sub for rustix::backend::pipe::types::PipeFlags

Source§

impl Sub for rustix::backend::pipe::types::SpliceFlags

Source§

impl Sub for TimerfdFlags

Source§

impl Sub for TimerfdTimerFlags

Source§

impl Sub for IFlags

Source§

impl Sub for StatxAttributes

Source§

impl Sub for rustix::fs::statx::StatxFlags

Source§

impl Sub for rustix::fs::xattr::XattrFlags

Source§

impl Sub for rustix::fs::xattr::XattrFlags

Source§

impl Sub for SocketFlags

Source§

impl Sub for TxTimeFlags

Source§

impl Sub for SocketAddrXdpFlags

Source§

impl Sub for XdpDescOptions

Source§

impl Sub for XdpOptionsFlags

Source§

impl Sub for XdpRingFlags

Source§

impl Sub for XdpUmemRegFlags

Source§

impl Sub for PidfdFlags

Source§

impl Sub for PidfdGetfdFlags

Source§

impl Sub for FloatingPointEmulationControl

Source§

impl Sub for FloatingPointExceptionMode

Source§

impl Sub for SpeculationFeatureControl

Source§

impl Sub for SpeculationFeatureState

Source§

impl Sub for UnalignedAccessControl

Source§

impl Sub for WaitIdOptions

Source§

impl Sub for WaitOptions

Source§

impl Sub for Timespec

Source§

impl Sub for Date

Source§

impl Sub for time::duration::Duration

Source§

impl Sub for time::instant::Instant

Source§

impl Sub for OffsetDateTime

Source§

impl Sub for PrimitiveDateTime

Source§

impl Sub for Time

Source§

impl Sub for Ready

Source§

impl Sub for tokio::time::instant::Instant

Source§

impl Sub for ATerm

Source§

impl Sub for Z0

Z0 - Z0 = Z0

Source§

impl Sub for UTerm

UTerm - UTerm = UTerm

1.0.0 (const: unstable) · Source§

impl Sub<&f16> for &f16

1.0.0 (const: unstable) · Source§

impl Sub<&f16> for f16

1.0.0 (const: unstable) · Source§

impl Sub<&f32> for &f32

1.0.0 (const: unstable) · Source§

impl Sub<&f32> for f32

1.0.0 (const: unstable) · Source§

impl Sub<&f64> for &f64

1.0.0 (const: unstable) · Source§

impl Sub<&f64> for f64

1.0.0 (const: unstable) · Source§

impl Sub<&f128> for &f128

1.0.0 (const: unstable) · Source§

impl Sub<&f128> for f128

1.0.0 (const: unstable) · Source§

impl Sub<&i8> for &i8

1.0.0 (const: unstable) · Source§

impl Sub<&i8> for i8

1.0.0 (const: unstable) · Source§

impl Sub<&i16> for &i16

1.0.0 (const: unstable) · Source§

impl Sub<&i16> for i16

1.0.0 (const: unstable) · Source§

impl Sub<&i32> for &i32

1.0.0 (const: unstable) · Source§

impl Sub<&i32> for i32

1.0.0 (const: unstable) · Source§

impl Sub<&i64> for &i64

1.0.0 (const: unstable) · Source§

impl Sub<&i64> for i64

1.0.0 (const: unstable) · Source§

impl Sub<&i128> for &i128

1.0.0 (const: unstable) · Source§

impl Sub<&i128> for i128

1.0.0 (const: unstable) · Source§

impl Sub<&isize> for &isize

1.0.0 (const: unstable) · Source§

impl Sub<&isize> for isize

1.0.0 (const: unstable) · Source§

impl Sub<&u8> for &u8

1.0.0 (const: unstable) · Source§

impl Sub<&u8> for u8

1.0.0 (const: unstable) · Source§

impl Sub<&u16> for &u16

1.0.0 (const: unstable) · Source§

impl Sub<&u16> for u16

1.0.0 (const: unstable) · Source§

impl Sub<&u32> for &u32

1.0.0 (const: unstable) · Source§

impl Sub<&u32> for u32

1.0.0 (const: unstable) · Source§

impl Sub<&u64> for &u64

1.0.0 (const: unstable) · Source§

impl Sub<&u64> for u64

1.0.0 (const: unstable) · Source§

impl Sub<&u128> for &u128

1.0.0 (const: unstable) · Source§

impl Sub<&u128> for u128

1.0.0 (const: unstable) · Source§

impl Sub<&usize> for &usize

1.0.0 (const: unstable) · Source§

impl Sub<&usize> for usize

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i8>> for &Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i8>> for Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i16>> for &Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i16>> for Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i32>> for &Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i32>> for Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i64>> for &Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i64>> for Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i128>> for &Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<i128>> for Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<isize>> for &Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<isize>> for Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u8>> for &Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u8>> for Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u16>> for &Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u16>> for Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u32>> for &Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u32>> for Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u64>> for &Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u64>> for Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u128>> for &Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<u128>> for Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<usize>> for &Saturating<usize>

1.74.0 (const: unstable) · Source§

impl Sub<&Saturating<usize>> for Saturating<usize>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i8>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i8>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i8>> for rosetta_server::crypto::bip39::core::num::Wrapping<i8>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i16>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i16>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i16>> for rosetta_server::crypto::bip39::core::num::Wrapping<i16>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i32>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i32>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i32>> for rosetta_server::crypto::bip39::core::num::Wrapping<i32>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i64>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i64>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i64>> for rosetta_server::crypto::bip39::core::num::Wrapping<i64>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i128>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i128>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<i128>> for rosetta_server::crypto::bip39::core::num::Wrapping<i128>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<isize>> for &rosetta_server::crypto::bip39::core::num::Wrapping<isize>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<isize>> for rosetta_server::crypto::bip39::core::num::Wrapping<isize>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u8>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u8>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u8>> for rosetta_server::crypto::bip39::core::num::Wrapping<u8>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u16>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u16>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u16>> for rosetta_server::crypto::bip39::core::num::Wrapping<u16>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u32>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u32>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u32>> for rosetta_server::crypto::bip39::core::num::Wrapping<u32>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u64>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u64>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u64>> for rosetta_server::crypto::bip39::core::num::Wrapping<u64>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u128>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u128>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<u128>> for rosetta_server::crypto::bip39::core::num::Wrapping<u128>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<usize>> for &rosetta_server::crypto::bip39::core::num::Wrapping<usize>

1.14.0 (const: unstable) · Source§

impl Sub<&Wrapping<usize>> for rosetta_server::crypto::bip39::core::num::Wrapping<usize>

Source§

impl Sub<&Checked<Limb>> for &Checked<Limb>

Source§

impl Sub<&Checked<Limb>> for Checked<Limb>

Source§

impl Sub<&Wrapping<Limb>> for &crypto_bigint::wrapping::Wrapping<Limb>

Source§

impl Sub<&Wrapping<Limb>> for crypto_bigint::wrapping::Wrapping<Limb>

Source§

impl Sub<&AffinePoint> for &k256::arithmetic::projective::ProjectivePoint

Source§

impl Sub<&AffinePoint> for k256::arithmetic::projective::ProjectivePoint

Source§

impl Sub<&ProjectivePoint> for &k256::arithmetic::projective::ProjectivePoint

Source§

impl Sub<&ProjectivePoint> for k256::arithmetic::projective::ProjectivePoint

Source§

impl Sub<&Scalar> for &k256::arithmetic::scalar::Scalar

Source§

impl Sub<&Scalar> for k256::arithmetic::scalar::Scalar

Source§

impl Sub<&Scalar> for &p256::arithmetic::scalar::Scalar

Source§

impl Sub<&Scalar> for p256::arithmetic::scalar::Scalar

1.0.0 (const: unstable) · Source§

impl Sub<f16> for &f16

1.0.0 (const: unstable) · Source§

impl Sub<f32> for &f32

1.0.0 (const: unstable) · Source§

impl Sub<f64> for &f64

1.0.0 (const: unstable) · Source§

impl Sub<f128> for &f128

1.0.0 (const: unstable) · Source§

impl Sub<i8> for &i8

1.0.0 (const: unstable) · Source§

impl Sub<i16> for &i16

1.0.0 (const: unstable) · Source§

impl Sub<i32> for &i32

1.0.0 (const: unstable) · Source§

impl Sub<i64> for &i64

1.0.0 (const: unstable) · Source§

impl Sub<i128> for &i128

1.0.0 (const: unstable) · Source§

impl Sub<isize> for &isize

1.0.0 (const: unstable) · Source§

impl Sub<u8> for &u8

1.0.0 (const: unstable) · Source§

impl Sub<u16> for &u16

1.0.0 (const: unstable) · Source§

impl Sub<u32> for &u32

1.0.0 (const: unstable) · Source§

impl Sub<u64> for &u64

1.0.0 (const: unstable) · Source§

impl Sub<u128> for &u128

1.0.0 (const: unstable) · Source§

impl Sub<usize> for &usize

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<i8>> for &Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<i16>> for &Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<i32>> for &Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<i64>> for &Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<i128>> for &Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<isize>> for &Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<u8>> for &Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<u16>> for &Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<u32>> for &Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<u64>> for &Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<u128>> for &Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Sub<Saturating<usize>> for &Saturating<usize>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<i8>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i8>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<i16>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i16>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<i32>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i32>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<i64>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i64>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<i128>> for &rosetta_server::crypto::bip39::core::num::Wrapping<i128>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<isize>> for &rosetta_server::crypto::bip39::core::num::Wrapping<isize>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<u8>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u8>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<u16>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u16>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<u32>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u32>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<u64>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u64>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<u128>> for &rosetta_server::crypto::bip39::core::num::Wrapping<u128>

1.14.0 (const: unstable) · Source§

impl Sub<Wrapping<usize>> for &rosetta_server::crypto::bip39::core::num::Wrapping<usize>

1.8.0 · Source§

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

1.8.0 · Source§

impl Sub<Duration> for SystemTime

Source§

impl Sub<Duration> for Date

Source§

impl Sub<Duration> for time::duration::Duration

Source§

impl Sub<Duration> for time::instant::Instant

Source§

impl Sub<Duration> for OffsetDateTime

Source§

impl Sub<Duration> for PrimitiveDateTime

Source§

impl Sub<Duration> for Time

Source§

impl Sub<Duration> for tokio::time::instant::Instant

Source§

impl Sub<Instant> for time::instant::Instant

Source§

impl Sub<SystemTime> for OffsetDateTime

Source§

impl Sub<SystemTime> for PrimitiveDateTime

Deprecated since v0.2.7, as it assumes an offset of UTC.

Source§

impl Sub<Effects> for Style

§Examples

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

impl Sub<Checked<Limb>> for &Checked<Limb>

Source§

impl Sub<Wrapping<Limb>> for &crypto_bigint::wrapping::Wrapping<Limb>

Source§

impl Sub<Length> for Result<Length, Error>

Source§

impl Sub<AffinePoint> for k256::arithmetic::projective::ProjectivePoint

Source§

impl Sub<Duration> for rosetta_server::crypto::bip39::core::time::Duration

Source§

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

Source§

impl Sub<Duration> for SystemTime

Source§

impl Sub<Duration> for Date

Source§

impl Sub<Duration> for time::instant::Instant

Source§

impl Sub<Duration> for OffsetDateTime

Source§

impl Sub<Duration> for PrimitiveDateTime

Source§

impl Sub<Duration> for Time

Source§

impl Sub<Instant> for std::time::Instant

Source§

impl Sub<OffsetDateTime> for SystemTime

Source§

impl Sub<PrimitiveDateTime> for SystemTime

Deprecated since v0.2.7, as it assumes an offset of UTC.

Source§

impl Sub<B0> for UTerm

UTerm - B0 = Term

Source§

impl Sub<B1> for UInt<UTerm, B1>

UInt<UTerm, B1> - B1 = UTerm

Source§

impl<'a> Sub<EdwardsPoint> for &'a curve25519_dalek_ng::edwards::EdwardsPoint

Source§

impl<'a> Sub<RistrettoPoint> for &'a curve25519_dalek_ng::ristretto::RistrettoPoint

Source§

impl<'a> Sub<Scalar> for &'a curve25519_dalek_ng::scalar::Scalar

Source§

impl<'a> Sub<EdwardsPoint> for &'a curve25519_dalek::edwards::EdwardsPoint

Source§

impl<'a> Sub<EdwardsPoint> for &'a curve25519_dalek::edwards::EdwardsPoint

Source§

impl<'a> Sub<RistrettoPoint> for &'a curve25519_dalek::ristretto::RistrettoPoint

Source§

impl<'a> Sub<RistrettoPoint> for &'a curve25519_dalek::ristretto::RistrettoPoint

Source§

impl<'a> Sub<Scalar> for &'a curve25519_dalek::scalar::Scalar

Source§

impl<'a> Sub<Scalar> for &'a curve25519_dalek::scalar::Scalar

Source§

impl<'a, 'b> Sub<&'b EdwardsPoint> for &'a curve25519_dalek_ng::edwards::EdwardsPoint

Source§

impl<'a, 'b> Sub<&'b RistrettoPoint> for &'a curve25519_dalek_ng::ristretto::RistrettoPoint

Source§

impl<'a, 'b> Sub<&'b Scalar> for &'a curve25519_dalek_ng::scalar::Scalar

Source§

impl<'a, 'b> Sub<&'b EdwardsPoint> for &'a curve25519_dalek::edwards::EdwardsPoint

Source§

impl<'a, 'b> Sub<&'b EdwardsPoint> for &'a curve25519_dalek::edwards::EdwardsPoint

Source§

impl<'a, 'b> Sub<&'b RistrettoPoint> for &'a curve25519_dalek::ristretto::RistrettoPoint

Source§

impl<'a, 'b> Sub<&'b RistrettoPoint> for &'a curve25519_dalek::ristretto::RistrettoPoint

Source§

impl<'a, 'b> Sub<&'b Scalar> for &'a curve25519_dalek::scalar::Scalar

Source§

impl<'a, 'b> Sub<&'b Scalar> for &'a curve25519_dalek::scalar::Scalar

Source§

impl<'a, 'b> Sub<&'b AffineNielsPoint> for &'a curve25519_dalek_ng::edwards::EdwardsPoint

Source§

type Output = CompletedPoint

Source§

impl<'a, 'b> Sub<&'b AffineNielsPoint> for &'a curve25519_dalek::edwards::EdwardsPoint

Source§

type Output = CompletedPoint

Source§

impl<'a, 'b> Sub<&'b AffineNielsPoint> for &'a curve25519_dalek::edwards::EdwardsPoint

Source§

type Output = CompletedPoint

Source§

impl<'a, 'b> Sub<&'b ProjectiveNielsPoint> for &'a curve25519_dalek_ng::edwards::EdwardsPoint

Source§

type Output = CompletedPoint

Source§

impl<'a, 'b> Sub<&'b ProjectiveNielsPoint> for &'a curve25519_dalek::edwards::EdwardsPoint

Source§

type Output = CompletedPoint

Source§

impl<'a, 'b> Sub<&'b ProjectiveNielsPoint> for &'a curve25519_dalek::edwards::EdwardsPoint

Source§

type Output = CompletedPoint

Source§

impl<'b> Sub<&'b EdwardsPoint> for curve25519_dalek_ng::edwards::EdwardsPoint

Source§

impl<'b> Sub<&'b RistrettoPoint> for curve25519_dalek_ng::ristretto::RistrettoPoint

Source§

impl<'b> Sub<&'b Scalar> for curve25519_dalek_ng::scalar::Scalar

Source§

impl<'b> Sub<&'b EdwardsPoint> for curve25519_dalek::edwards::EdwardsPoint

Source§

impl<'b> Sub<&'b EdwardsPoint> for curve25519_dalek::edwards::EdwardsPoint

Source§

impl<'b> Sub<&'b RistrettoPoint> for curve25519_dalek::ristretto::RistrettoPoint

Source§

impl<'b> Sub<&'b RistrettoPoint> for curve25519_dalek::ristretto::RistrettoPoint

Source§

impl<'b> Sub<&'b Scalar> for curve25519_dalek::scalar::Scalar

Source§

impl<'b> Sub<&'b Scalar> for curve25519_dalek::scalar::Scalar

Source§

impl<'lhs, 'rhs, T, const N: usize> Sub<&'rhs Simd<T, N>> for &'lhs Simd<T, N>
where T: SimdElement, Simd<T, N>: Sub<Output = Simd<T, N>>, LaneCount<N>: SupportedLaneCount,

Source§

type Output = Simd<T, N>

Source§

impl<C> Sub for ScalarPrimitive<C>
where C: Curve,

Source§

impl<C> Sub for primeorder::projective::ProjectivePoint<C>

Source§

impl<C> Sub<&ScalarPrimitive<C>> for ScalarPrimitive<C>
where C: Curve,

Source§

impl<C> Sub<&AffinePoint<C>> for &primeorder::projective::ProjectivePoint<C>

Source§

impl<C> Sub<&AffinePoint<C>> for primeorder::projective::ProjectivePoint<C>

Source§

impl<C> Sub<&ProjectivePoint<C>> for &primeorder::projective::ProjectivePoint<C>

Source§

impl<C> Sub<&ProjectivePoint<C>> for primeorder::projective::ProjectivePoint<C>

Source§

impl<C> Sub<AffinePoint<C>> for primeorder::projective::ProjectivePoint<C>

Source§

impl<MOD, const LIMBS: usize> Sub for Residue<MOD, LIMBS>
where MOD: ResidueParams<LIMBS>,

Source§

type Output = Residue<MOD, LIMBS>

Source§

impl<MOD, const LIMBS: usize> Sub<&Residue<MOD, LIMBS>> for &Residue<MOD, LIMBS>
where MOD: ResidueParams<LIMBS>,

Source§

type Output = Residue<MOD, LIMBS>

Source§

impl<MOD, const LIMBS: usize> Sub<&Residue<MOD, LIMBS>> for Residue<MOD, LIMBS>
where MOD: ResidueParams<LIMBS>,

Source§

type Output = Residue<MOD, LIMBS>

Source§

impl<MOD, const LIMBS: usize> Sub<Residue<MOD, LIMBS>> for &Residue<MOD, LIMBS>
where MOD: ResidueParams<LIMBS>,

Source§

type Output = Residue<MOD, LIMBS>

Source§

impl<O> Sub for F32<O>
where O: ByteOrder,

Source§

impl<O> Sub for F64<O>
where O: ByteOrder,

Source§

impl<O> Sub for I16<O>
where O: ByteOrder,

Source§

impl<O> Sub for I32<O>
where O: ByteOrder,

Source§

impl<O> Sub for I64<O>
where O: ByteOrder,

Source§

impl<O> Sub for I128<O>
where O: ByteOrder,

Source§

impl<O> Sub for Isize<O>
where O: ByteOrder,

Source§

impl<O> Sub for U16<O>
where O: ByteOrder,

Source§

impl<O> Sub for U32<O>
where O: ByteOrder,

Source§

impl<O> Sub for U64<O>
where O: ByteOrder,

Source§

impl<O> Sub for U128<O>
where O: ByteOrder,

Source§

impl<O> Sub for Usize<O>
where O: ByteOrder,

Source§

impl<O> Sub<f32> for F32<O>
where O: ByteOrder,

Source§

impl<O> Sub<f64> for F64<O>
where O: ByteOrder,

Source§

impl<O> Sub<i16> for I16<O>
where O: ByteOrder,

Source§

impl<O> Sub<i32> for I32<O>
where O: ByteOrder,

Source§

impl<O> Sub<i64> for I64<O>
where O: ByteOrder,

Source§

impl<O> Sub<i128> for I128<O>
where O: ByteOrder,

Source§

impl<O> Sub<isize> for Isize<O>
where O: ByteOrder,

Source§

impl<O> Sub<u16> for U16<O>
where O: ByteOrder,

Source§

impl<O> Sub<u32> for U32<O>
where O: ByteOrder,

Source§

impl<O> Sub<u64> for U64<O>
where O: ByteOrder,

Source§

impl<O> Sub<u128> for U128<O>
where O: ByteOrder,

Source§

impl<O> Sub<usize> for Usize<O>
where O: ByteOrder,

Source§

impl<O> Sub<F32<O>> for f32
where O: ByteOrder,

Source§

impl<O> Sub<F64<O>> for f64
where O: ByteOrder,

Source§

impl<O> Sub<I16<O>> for i16
where O: ByteOrder,

Source§

impl<O> Sub<I32<O>> for i32
where O: ByteOrder,

Source§

impl<O> Sub<I64<O>> for i64
where O: ByteOrder,

Source§

impl<O> Sub<I128<O>> for i128
where O: ByteOrder,

Source§

impl<O> Sub<Isize<O>> for isize
where O: ByteOrder,

Source§

impl<O> Sub<U16<O>> for u16
where O: ByteOrder,

Source§

impl<O> Sub<U32<O>> for u32
where O: ByteOrder,

Source§

impl<O> Sub<U64<O>> for u64
where O: ByteOrder,

Source§

impl<O> Sub<U128<O>> for u128
where O: ByteOrder,

Source§

impl<O> Sub<Usize<O>> for usize
where O: ByteOrder,

1.0.0 · Source§

impl<T, A> Sub<&BTreeSet<T, A>> for &BTreeSet<T, A>
where T: Ord + Clone, A: Allocator + Clone,

1.0.0 · Source§

impl<T, S> Sub<&HashSet<T, S>> for &HashSet<T, S>
where T: Eq + Hash + Clone, S: BuildHasher + Default,

Source§

type Output = HashSet<T, S>

Source§

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

Source§

type Output = Simd<T, N>

Source§

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

Source§

type Output = Simd<T, N>

Source§

impl<U> Sub<B1> for UInt<U, B0>
where U: Unsigned + Sub<B1>, <U as Sub<B1>>::Output: Unsigned,

UInt<U, B0> - B1 = UInt<U - B1, B1>

Source§

type Output = UInt<<U as Sub<B1>>::Output, B1>

Source§

impl<U> Sub<NInt<U>> for Z0
where U: Unsigned + NonZero,

Z0 - N = P

Source§

impl<U> Sub<PInt<U>> for Z0
where U: Unsigned + NonZero,

Z0 - P = N

Source§

impl<U> Sub<Z0> for NInt<U>
where U: Unsigned + NonZero,

NInt - Z0 = NInt

Source§

impl<U> Sub<Z0> for PInt<U>
where U: Unsigned + NonZero,

PInt - Z0 = PInt

Source§

impl<U, B> Sub<B0> for UInt<U, B>
where U: Unsigned, B: Bit,

UInt - B0 = UInt

Source§

type Output = UInt<U, B>

Source§

impl<U, B> Sub<B1> for UInt<UInt<U, B>, B1>
where U: Unsigned, B: Bit,

UInt<U, B1> - B1 = UInt<U, B0>

Source§

type Output = UInt<UInt<U, B>, B0>

Source§

impl<Ul, Bl, Ur> Sub<Ur> for UInt<Ul, Bl>
where Ul: Unsigned, Bl: Bit, Ur: Unsigned, UInt<Ul, Bl>: PrivateSub<Ur>, <UInt<Ul, Bl> as PrivateSub<Ur>>::Output: Trim,

Subtracting unsigned integers. We just do our PrivateSub and then Trim the output.

Source§

type Output = <<UInt<Ul, Bl> as PrivateSub<Ur>>::Output as Trim>::Output

Source§

impl<Ul, Ur> Sub<NInt<Ur>> for NInt<Ul>
where Ul: Unsigned + NonZero, Ur: Unsigned + NonZero + Cmp<Ul> + PrivateIntegerAdd<<Ur as Cmp<Ul>>::Output, Ul>,

N(Ul) - N(Ur): We resolve this with our PrivateAdd

Source§

type Output = <Ur as PrivateIntegerAdd<<Ur as Cmp<Ul>>::Output, Ul>>::Output

Source§

impl<Ul, Ur> Sub<NInt<Ur>> for PInt<Ul>
where Ul: Unsigned + NonZero + Add<Ur>, Ur: Unsigned + NonZero, <Ul as Add<Ur>>::Output: Unsigned + NonZero,

P(Ul) - N(Ur) = P(Ul + Ur)

Source§

type Output = PInt<<Ul as Add<Ur>>::Output>

Source§

impl<Ul, Ur> Sub<PInt<Ur>> for NInt<Ul>
where Ul: Unsigned + NonZero + Add<Ur>, Ur: Unsigned + NonZero, <Ul as Add<Ur>>::Output: Unsigned + NonZero,

N(Ul) - P(Ur) = N(Ul + Ur)

Source§

type Output = NInt<<Ul as Add<Ur>>::Output>

Source§

impl<Ul, Ur> Sub<PInt<Ur>> for PInt<Ul>
where Ul: Unsigned + NonZero + Cmp<Ur> + PrivateIntegerAdd<<Ul as Cmp<Ur>>::Output, Ur>, Ur: Unsigned + NonZero,

P(Ul) - P(Ur): We resolve this with our PrivateAdd

Source§

type Output = <Ul as PrivateIntegerAdd<<Ul as Cmp<Ur>>::Output, Ur>>::Output

Source§

impl<Vl, Al, Vr, Ar> Sub<TArr<Vr, Ar>> for TArr<Vl, Al>
where Vl: Sub<Vr>, Al: Sub<Ar>,

Source§

type Output = TArr<<Vl as Sub<Vr>>::Output, <Al as Sub<Ar>>::Output>

Source§

impl<const LIMBS: usize> Sub for Checked<Uint<LIMBS>>

Source§

type Output = Checked<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Sub for DynResidue<LIMBS>

Source§

impl<const LIMBS: usize> Sub for crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Sub<&Checked<Uint<LIMBS>>> for &Checked<Uint<LIMBS>>

Source§

type Output = Checked<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Sub<&Checked<Uint<LIMBS>>> for Checked<Uint<LIMBS>>

Source§

type Output = Checked<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Sub<&DynResidue<LIMBS>> for &DynResidue<LIMBS>

Source§

impl<const LIMBS: usize> Sub<&DynResidue<LIMBS>> for DynResidue<LIMBS>

Source§

impl<const LIMBS: usize> Sub<&Wrapping<Uint<LIMBS>>> for &crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Sub<&Wrapping<Uint<LIMBS>>> for crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Sub<Checked<Uint<LIMBS>>> for &Checked<Uint<LIMBS>>

Source§

type Output = Checked<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Sub<DynResidue<LIMBS>> for &DynResidue<LIMBS>

Source§

impl<const LIMBS: usize> Sub<Wrapping<Uint<LIMBS>>> for &crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const N: usize> Sub for Simd<f32, N>

Source§

impl<const N: usize> Sub for Simd<f64, N>

Source§

impl<const N: usize> Sub for Simd<i8, N>

Source§

impl<const N: usize> Sub for Simd<i16, N>

Source§

impl<const N: usize> Sub for Simd<i32, N>

Source§

impl<const N: usize> Sub for Simd<i64, N>

Source§

impl<const N: usize> Sub for Simd<isize, N>

Source§

impl<const N: usize> Sub for Simd<u8, N>

Source§

impl<const N: usize> Sub for Simd<u16, N>

Source§

impl<const N: usize> Sub for Simd<u32, N>

Source§

impl<const N: usize> Sub for Simd<u64, N>

Source§

impl<const N: usize> Sub for Simd<usize, N>