Skip to main content

Div

Trait Div 

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

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

The division operator /.

Note that Rhs is Self by default, but this is not mandatory.

§Examples

§Dividable rational numbers

use std::ops::Div;

// By the fundamental theorem of arithmetic, rational numbers in lowest
// terms are unique. So, by keeping `Rational`s in reduced form, we can
// derive `Eq` and `PartialEq`.
#[derive(Debug, Eq, PartialEq)]
struct Rational {
    numerator: usize,
    denominator: usize,
}

impl Rational {
    fn new(numerator: usize, denominator: usize) -> Self {
        if denominator == 0 {
            panic!("Zero is an invalid denominator!");
        }

        // Reduce to lowest terms by dividing by the greatest common
        // divisor.
        let gcd = gcd(numerator, denominator);
        Self {
            numerator: numerator / gcd,
            denominator: denominator / gcd,
        }
    }
}

impl Div for Rational {
    // The division of rational numbers is a closed operation.
    type Output = Self;

    fn div(self, rhs: Self) -> Self::Output {
        if rhs.numerator == 0 {
            panic!("Cannot divide by zero-valued `Rational`!");
        }

        let numerator = self.numerator * rhs.denominator;
        let denominator = self.denominator * rhs.numerator;
        Self::new(numerator, denominator)
    }
}

// Euclid's two-thousand-year-old algorithm for finding the greatest common
// divisor.
fn gcd(x: usize, y: usize) -> usize {
    let mut x = x;
    let mut y = y;
    while y != 0 {
        let t = y;
        y = x % y;
        x = t;
    }
    x
}

assert_eq!(Rational::new(1, 2), Rational::new(2, 4));
assert_eq!(Rational::new(1, 2) / Rational::new(3, 4),
           Rational::new(2, 3));

§Dividing vectors by scalars as in linear algebra

use std::ops::Div;

struct Scalar { value: f32 }

#[derive(Debug, PartialEq)]
struct Vector { value: Vec<f32> }

impl Div<Scalar> for Vector {
    type Output = Self;

    fn div(self, rhs: Scalar) -> Self::Output {
        Self { value: self.value.iter().map(|v| v / rhs.value).collect() }
    }
}

let scalar = Scalar { value: 2f32 };
let vector = Vector { value: vec![2f32, 4f32, 6f32] };
assert_eq!(vector / scalar, Vector { value: vec![1f32, 2f32, 3f32] });

Required Associated Types§

1.0.0 · Source

type Output

The resulting type after applying the / operator.

Required Methods§

1.0.0 · Source

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

Performs the / operation.

§Example
assert_eq!(12 / 2, 6);

Implementors§

1.0.0 (const: unstable) · Source§

impl Div for f16

1.0.0 (const: unstable) · Source§

impl Div for f32

1.0.0 (const: unstable) · Source§

impl Div for f64

1.0.0 (const: unstable) · Source§

impl Div for f128

1.0.0 (const: unstable) · Source§

impl Div for i8

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0 or the division results in overflow.

1.0.0 (const: unstable) · Source§

impl Div for i16

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0 or the division results in overflow.

1.0.0 (const: unstable) · Source§

impl Div for i32

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0 or the division results in overflow.

1.0.0 (const: unstable) · Source§

impl Div for i64

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0 or the division results in overflow.

1.0.0 (const: unstable) · Source§

impl Div for i128

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0 or the division results in overflow.

1.0.0 (const: unstable) · Source§

impl Div for isize

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0 or the division results in overflow.

1.0.0 (const: unstable) · Source§

impl Div for u8

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0.

1.0.0 (const: unstable) · Source§

impl Div for u16

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0.

1.0.0 (const: unstable) · Source§

impl Div for u32

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0.

1.0.0 (const: unstable) · Source§

impl Div for u64

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0.

1.0.0 (const: unstable) · Source§

impl Div for u128

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0.

1.0.0 (const: unstable) · Source§

impl Div for usize

This operation rounds towards zero, truncating any fractional part of the exact result.

§Panics

This operation will panic if other == 0.

Source§

impl Div for FixedI64

Source§

impl Div for FixedI128

Source§

impl Div for FixedU64

Source§

impl Div for FixedU128

Source§

impl Div for PerU16

Source§

impl Div for Perbill

Source§

impl Div for Percent

Source§

impl Div for Permill

Source§

impl Div for Perquintill

1.74.0 (const: unstable) · Source§

impl Div for Saturating<i8>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2i8), Saturating(5i8) / Saturating(2));
assert_eq!(Saturating(i8::MAX), Saturating(i8::MAX) / Saturating(1));
assert_eq!(Saturating(i8::MIN), Saturating(i8::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0i8) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<i16>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2i16), Saturating(5i16) / Saturating(2));
assert_eq!(Saturating(i16::MAX), Saturating(i16::MAX) / Saturating(1));
assert_eq!(Saturating(i16::MIN), Saturating(i16::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0i16) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<i32>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2i32), Saturating(5i32) / Saturating(2));
assert_eq!(Saturating(i32::MAX), Saturating(i32::MAX) / Saturating(1));
assert_eq!(Saturating(i32::MIN), Saturating(i32::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0i32) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<i64>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2i64), Saturating(5i64) / Saturating(2));
assert_eq!(Saturating(i64::MAX), Saturating(i64::MAX) / Saturating(1));
assert_eq!(Saturating(i64::MIN), Saturating(i64::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0i64) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<i128>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2i128), Saturating(5i128) / Saturating(2));
assert_eq!(Saturating(i128::MAX), Saturating(i128::MAX) / Saturating(1));
assert_eq!(Saturating(i128::MIN), Saturating(i128::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0i128) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<isize>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2isize), Saturating(5isize) / Saturating(2));
assert_eq!(Saturating(isize::MAX), Saturating(isize::MAX) / Saturating(1));
assert_eq!(Saturating(isize::MIN), Saturating(isize::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0isize) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<u8>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2u8), Saturating(5u8) / Saturating(2));
assert_eq!(Saturating(u8::MAX), Saturating(u8::MAX) / Saturating(1));
assert_eq!(Saturating(u8::MIN), Saturating(u8::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0u8) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<u16>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2u16), Saturating(5u16) / Saturating(2));
assert_eq!(Saturating(u16::MAX), Saturating(u16::MAX) / Saturating(1));
assert_eq!(Saturating(u16::MIN), Saturating(u16::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0u16) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<u32>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2u32), Saturating(5u32) / Saturating(2));
assert_eq!(Saturating(u32::MAX), Saturating(u32::MAX) / Saturating(1));
assert_eq!(Saturating(u32::MIN), Saturating(u32::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0u32) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<u64>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2u64), Saturating(5u64) / Saturating(2));
assert_eq!(Saturating(u64::MAX), Saturating(u64::MAX) / Saturating(1));
assert_eq!(Saturating(u64::MIN), Saturating(u64::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0u64) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<u128>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2u128), Saturating(5u128) / Saturating(2));
assert_eq!(Saturating(u128::MAX), Saturating(u128::MAX) / Saturating(1));
assert_eq!(Saturating(u128::MIN), Saturating(u128::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0u128) / Saturating(0);
1.74.0 (const: unstable) · Source§

impl Div for Saturating<usize>

§Examples

use std::num::Saturating;

assert_eq!(Saturating(2usize), Saturating(5usize) / Saturating(2));
assert_eq!(Saturating(usize::MAX), Saturating(usize::MAX) / Saturating(1));
assert_eq!(Saturating(usize::MIN), Saturating(usize::MIN) / Saturating(1));
use std::num::Saturating;

let _ = Saturating(0usize) / Saturating(0);
1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<i8>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<i16>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<i32>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<i64>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<i128>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<isize>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<u8>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<u16>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<u32>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<u64>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<u128>

1.3.0 (const: unstable) · Source§

impl Div for topsoil_core::runtime::std::num::Wrapping<usize>

Source§

impl Div for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<&f16> for &f16

1.0.0 (const: unstable) · Source§

impl Div<&f16> for f16

1.0.0 (const: unstable) · Source§

impl Div<&f32> for &f32

1.0.0 (const: unstable) · Source§

impl Div<&f32> for f32

1.0.0 (const: unstable) · Source§

impl Div<&f64> for &f64

1.0.0 (const: unstable) · Source§

impl Div<&f64> for f64

1.0.0 (const: unstable) · Source§

impl Div<&f128> for &f128

1.0.0 (const: unstable) · Source§

impl Div<&f128> for f128

1.0.0 (const: unstable) · Source§

impl Div<&i8> for &i8

1.0.0 (const: unstable) · Source§

impl Div<&i8> for i8

1.0.0 (const: unstable) · Source§

impl Div<&i16> for &i16

1.0.0 (const: unstable) · Source§

impl Div<&i16> for i16

1.0.0 (const: unstable) · Source§

impl Div<&i32> for &i32

1.0.0 (const: unstable) · Source§

impl Div<&i32> for i32

1.0.0 (const: unstable) · Source§

impl Div<&i64> for &i64

1.0.0 (const: unstable) · Source§

impl Div<&i64> for i64

1.0.0 (const: unstable) · Source§

impl Div<&i128> for &i128

1.0.0 (const: unstable) · Source§

impl Div<&i128> for i128

1.0.0 (const: unstable) · Source§

impl Div<&isize> for &isize

1.0.0 (const: unstable) · Source§

impl Div<&isize> for isize

1.0.0 (const: unstable) · Source§

impl Div<&u8> for &u8

1.0.0 (const: unstable) · Source§

impl Div<&u8> for u8

1.0.0 (const: unstable) · Source§

impl Div<&u16> for &u16

1.0.0 (const: unstable) · Source§

impl Div<&u16> for u16

1.0.0 (const: unstable) · Source§

impl Div<&u32> for &u32

1.0.0 (const: unstable) · Source§

impl Div<&u32> for u32

1.0.0 (const: unstable) · Source§

impl Div<&u64> for &u64

1.0.0 (const: unstable) · Source§

impl Div<&u64> for u64

1.0.0 (const: unstable) · Source§

impl Div<&u128> for &u128

1.0.0 (const: unstable) · Source§

impl Div<&u128> for u128

1.0.0 (const: unstable) · Source§

impl Div<&usize> for &usize

1.0.0 (const: unstable) · Source§

impl Div<&usize> for usize

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i8>> for &Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i8>> for Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i16>> for &Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i16>> for Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i32>> for &Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i32>> for Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i64>> for &Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i64>> for Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i128>> for &Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<i128>> for Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<isize>> for &Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<isize>> for Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u8>> for &Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u8>> for Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u16>> for &Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u16>> for Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u32>> for &Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u32>> for Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u64>> for &Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u64>> for Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u128>> for &Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<u128>> for Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<usize>> for &Saturating<usize>

1.74.0 (const: unstable) · Source§

impl Div<&Saturating<usize>> for Saturating<usize>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i8>> for &topsoil_core::runtime::std::num::Wrapping<i8>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i8>> for topsoil_core::runtime::std::num::Wrapping<i8>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i16>> for &topsoil_core::runtime::std::num::Wrapping<i16>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i16>> for topsoil_core::runtime::std::num::Wrapping<i16>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i32>> for &topsoil_core::runtime::std::num::Wrapping<i32>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i32>> for topsoil_core::runtime::std::num::Wrapping<i32>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i64>> for &topsoil_core::runtime::std::num::Wrapping<i64>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i64>> for topsoil_core::runtime::std::num::Wrapping<i64>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i128>> for &topsoil_core::runtime::std::num::Wrapping<i128>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<i128>> for topsoil_core::runtime::std::num::Wrapping<i128>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<isize>> for &topsoil_core::runtime::std::num::Wrapping<isize>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<isize>> for topsoil_core::runtime::std::num::Wrapping<isize>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u8>> for &topsoil_core::runtime::std::num::Wrapping<u8>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u8>> for topsoil_core::runtime::std::num::Wrapping<u8>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u16>> for &topsoil_core::runtime::std::num::Wrapping<u16>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u16>> for topsoil_core::runtime::std::num::Wrapping<u16>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u32>> for &topsoil_core::runtime::std::num::Wrapping<u32>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u32>> for topsoil_core::runtime::std::num::Wrapping<u32>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u64>> for &topsoil_core::runtime::std::num::Wrapping<u64>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u64>> for topsoil_core::runtime::std::num::Wrapping<u64>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u128>> for &topsoil_core::runtime::std::num::Wrapping<u128>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<u128>> for topsoil_core::runtime::std::num::Wrapping<u128>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<usize>> for &topsoil_core::runtime::std::num::Wrapping<usize>

1.14.0 (const: unstable) · Source§

impl Div<&Wrapping<usize>> for topsoil_core::runtime::std::num::Wrapping<usize>

1.0.0 (const: unstable) · Source§

impl Div<f16> for &f16

1.0.0 (const: unstable) · Source§

impl Div<f32> for &f32

Source§

impl Div<f32> for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<f64> for &f64

Source§

impl Div<f64> for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<f128> for &f128

1.0.0 (const: unstable) · Source§

impl Div<i8> for &i8

Source§

impl Div<i8> for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<i16> for &i16

Source§

impl Div<i16> for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<i32> for &i32

Source§

impl Div<i32> for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<i64> for &i64

1.0.0 (const: unstable) · Source§

impl Div<i128> for &i128

1.0.0 (const: unstable) · Source§

impl Div<isize> for &isize

1.0.0 (const: unstable) · Source§

impl Div<u8> for &u8

Source§

impl Div<u8> for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<u16> for &u16

Source§

impl Div<u16> for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<u32> for &u32

1.3.0 (const: unstable) · Source§

impl Div<u32> for topsoil_core::runtime::std::time::Duration

Source§

impl Div<u32> for time::duration::Duration

1.0.0 (const: unstable) · Source§

impl Div<u64> for &u64

1.0.0 (const: unstable) · Source§

impl Div<u128> for &u128

1.0.0 (const: unstable) · Source§

impl Div<usize> for &usize

1.51.0 (const: unstable) · Source§

impl Div<NonZero<u8>> for u8

1.51.0 (const: unstable) · Source§

impl Div<NonZero<u16>> for u16

1.51.0 (const: unstable) · Source§

impl Div<NonZero<u32>> for u32

1.51.0 (const: unstable) · Source§

impl Div<NonZero<u64>> for u64

1.51.0 (const: unstable) · Source§

impl Div<NonZero<u128>> for u128

1.51.0 (const: unstable) · Source§

impl Div<NonZero<usize>> for usize

1.74.0 (const: unstable) · Source§

impl Div<Saturating<i8>> for &Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<i16>> for &Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<i32>> for &Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<i64>> for &Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<i128>> for &Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<isize>> for &Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<u8>> for &Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<u16>> for &Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<u32>> for &Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<u64>> for &Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<u128>> for &Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Div<Saturating<usize>> for &Saturating<usize>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<i8>> for &topsoil_core::runtime::std::num::Wrapping<i8>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<i16>> for &topsoil_core::runtime::std::num::Wrapping<i16>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<i32>> for &topsoil_core::runtime::std::num::Wrapping<i32>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<i64>> for &topsoil_core::runtime::std::num::Wrapping<i64>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<i128>> for &topsoil_core::runtime::std::num::Wrapping<i128>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<isize>> for &topsoil_core::runtime::std::num::Wrapping<isize>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<u8>> for &topsoil_core::runtime::std::num::Wrapping<u8>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<u16>> for &topsoil_core::runtime::std::num::Wrapping<u16>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<u32>> for &topsoil_core::runtime::std::num::Wrapping<u32>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<u64>> for &topsoil_core::runtime::std::num::Wrapping<u64>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<u128>> for &topsoil_core::runtime::std::num::Wrapping<u128>

1.14.0 (const: unstable) · Source§

impl Div<Wrapping<usize>> for &topsoil_core::runtime::std::num::Wrapping<usize>

Source§

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

Source§

impl Div<Duration> for topsoil_core::runtime::std::time::Duration

Source§

impl<'a, T> Div<T> for &'a U256
where T: Into<U256>,

Source§

impl<'a, T> Div<T> for &'a U512
where T: Into<U512>,

Source§

impl<'a, T> Div<T> for &'a primitive_types::U128
where T: Into<U128>,

Source§

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

Source§

type Output = Simd<T, N>

Source§

impl<I> Div<I> for Z0
where I: Integer + NonZero,

Z0 / I = Z0 where I != 0

Source§

impl<N> Div<N> for PerU16
where u16: TryFrom<N>,

Source§

impl<N> Div<N> for Perbill
where u32: TryFrom<N>,

Source§

impl<N> Div<N> for Percent
where u8: TryFrom<N>,

Source§

impl<N> Div<N> for Permill
where u32: TryFrom<N>,

Source§

impl<N> Div<N> for Perquintill
where u64: TryFrom<N>,

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<O> Div for zerocopy::byteorder::U128<O>
where O: ByteOrder,

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<O> Div<u128> for zerocopy::byteorder::U128<O>
where O: ByteOrder,

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<Rhs> Div<Rhs> for ATerm

Source§

impl<T> Div<T> for Weight
where u64: Div<T, Output = u64>, T: Copy,

Source§

impl<T> Div<T> for U256
where T: Into<U256>,

Source§

impl<T> Div<T> for U512
where T: Into<U512>,

Source§

impl<T> Div<T> for primitive_types::U128
where T: Into<U128>,

Source§

impl<T, D> Div for TypeWithDefault<T, D>
where T: Div<Output = T>, D: Get<T>,

Source§

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

Source§

type Output = Simd<T, N>

Source§

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

Source§

type Output = Simd<T, N>

Source§

impl<Ul, Bl, Ur, Br> Div<UInt<Ur, Br>> for UInt<Ul, Bl>
where Ul: Unsigned, Bl: Bit, Ur: Unsigned, Br: Bit, UInt<Ul, Bl>: Len, <UInt<Ul, Bl> as Len>::Output: Sub<B1>, (): PrivateDiv<UInt<Ul, Bl>, UInt<Ur, Br>, UTerm, UTerm, <<UInt<Ul, Bl> as Len>::Output as Sub<B1>>::Output>,

Source§

type Output = <() as PrivateDiv<UInt<Ul, Bl>, UInt<Ur, Br>, UTerm, UTerm, <<UInt<Ul, Bl> as Len>::Output as Sub<B1>>::Output>>::Quotient

Source§

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

$A<Ul> / $B<Ur> = $R<Ul / Ur>

Source§

type Output = <NInt<Ul> as PrivateDivInt<<Ul as Cmp<Ur>>::Output, NInt<Ur>>>::Output

Source§

impl<Ul, Ur> Div<NInt<Ur>> for PInt<Ul>
where Ul: Unsigned + NonZero + Cmp<Ur>, Ur: Unsigned + NonZero, PInt<Ul>: PrivateDivInt<<Ul as Cmp<Ur>>::Output, NInt<Ur>>,

$A<Ul> / $B<Ur> = $R<Ul / Ur>

Source§

type Output = <PInt<Ul> as PrivateDivInt<<Ul as Cmp<Ur>>::Output, NInt<Ur>>>::Output

Source§

impl<Ul, Ur> Div<PInt<Ur>> for NInt<Ul>
where Ul: Unsigned + NonZero + Cmp<Ur>, Ur: Unsigned + NonZero, NInt<Ul>: PrivateDivInt<<Ul as Cmp<Ur>>::Output, PInt<Ur>>,

$A<Ul> / $B<Ur> = $R<Ul / Ur>

Source§

type Output = <NInt<Ul> as PrivateDivInt<<Ul as Cmp<Ur>>::Output, PInt<Ur>>>::Output

Source§

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

$A<Ul> / $B<Ur> = $R<Ul / Ur>

Source§

type Output = <PInt<Ul> as PrivateDivInt<<Ul as Cmp<Ur>>::Output, PInt<Ur>>>::Output

Source§

impl<Ur, Br> Div<UInt<Ur, Br>> for UTerm
where Ur: Unsigned, Br: Bit,

Source§

impl<V, A, Rhs> Div<Rhs> for TArr<V, A>
where V: Div<Rhs>, A: Div<Rhs>, Rhs: Copy,

Source§

type Output = TArr<<V as Div<Rhs>>::Output, <A as Div<Rhs>>::Output>

Source§

impl<const LIMBS: usize> Div<&NonZero<Limb>> for &Uint<LIMBS>

Source§

type Output = Uint<LIMBS>

Source§

impl<const LIMBS: usize> Div<&NonZero<Limb>> for &crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Div<&NonZero<Limb>> for Uint<LIMBS>

Source§

type Output = Uint<LIMBS>

Source§

impl<const LIMBS: usize> Div<&NonZero<Limb>> for crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Div<&NonZero<Uint<LIMBS>>> for &Uint<LIMBS>

Source§

type Output = Uint<LIMBS>

Source§

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

Source§

impl<const LIMBS: usize> Div<&NonZero<Uint<LIMBS>>> for Uint<LIMBS>

Source§

type Output = Uint<LIMBS>

Source§

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

Source§

impl<const LIMBS: usize> Div<NonZero<Limb>> for &Uint<LIMBS>

Source§

type Output = Uint<LIMBS>

Source§

impl<const LIMBS: usize> Div<NonZero<Limb>> for &crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Div<NonZero<Limb>> for Uint<LIMBS>

Source§

type Output = Uint<LIMBS>

Source§

impl<const LIMBS: usize> Div<NonZero<Limb>> for crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize> Div<NonZero<Uint<LIMBS>>> for &Uint<LIMBS>

Source§

type Output = Uint<LIMBS>

Source§

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

Source§

impl<const LIMBS: usize> Div<NonZero<Uint<LIMBS>>> for Uint<LIMBS>

Source§

type Output = Uint<LIMBS>

Source§

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

Source§

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

Source§

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

Source§

impl<const N: usize> Div for Simd<i8, N>
where i8: SimdElement,

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<const N: usize> Div for Simd<u8, N>
where u8: SimdElement,

Source§

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

Source§

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

Source§

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

Source§

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