Skip to main content

Mul

Trait Mul 

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

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

The multiplication operator *.

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

§Examples

§Multipliable rational numbers

use std::ops::Mul;

// 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 Mul for Rational {
    // The multiplication of rational numbers is a closed operation.
    type Output = Self;

    fn mul(self, rhs: Self) -> Self {
        let numerator = self.numerator * rhs.numerator;
        let denominator = self.denominator * rhs.denominator;
        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(2, 3) * Rational::new(3, 4),
           Rational::new(1, 2));

§Multiplying vectors by scalars as in linear algebra

use std::ops::Mul;

struct Scalar { value: usize }

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

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

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

let vector = Vector { value: vec![2, 4, 6] };
let scalar = Scalar { value: 3 };
assert_eq!(vector * scalar, Vector { value: vec![6, 12, 18] });

Required Associated Types§

1.0.0 · Source

type Output

The resulting type after applying the * operator.

Required Methods§

1.0.0 · Source

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

Performs the * operation.

§Example
assert_eq!(12 * 2, 24);

Implementors§

1.0.0 (const: unstable) · Source§

impl Mul for f16

1.0.0 (const: unstable) · Source§

impl Mul for f32

1.0.0 (const: unstable) · Source§

impl Mul for f64

1.0.0 (const: unstable) · Source§

impl Mul for f128

1.0.0 (const: unstable) · Source§

impl Mul for i8

1.0.0 (const: unstable) · Source§

impl Mul for i16

1.0.0 (const: unstable) · Source§

impl Mul for i32

1.0.0 (const: unstable) · Source§

impl Mul for i64

1.0.0 (const: unstable) · Source§

impl Mul for i128

1.0.0 (const: unstable) · Source§

impl Mul for isize

1.0.0 (const: unstable) · Source§

impl Mul for u8

1.0.0 (const: unstable) · Source§

impl Mul for u16

1.0.0 (const: unstable) · Source§

impl Mul for u32

1.0.0 (const: unstable) · Source§

impl Mul for u64

1.0.0 (const: unstable) · Source§

impl Mul for u128

1.0.0 (const: unstable) · Source§

impl Mul for usize

Source§

impl Mul for U256

Source§

impl Mul for U512

Source§

impl Mul for BigUint

Source§

impl Mul for FixedI64

Source§

impl Mul for FixedI128

Source§

impl Mul for FixedU64

Source§

impl Mul for FixedU128

Source§

impl Mul for PerU16

Source§

impl Mul for Perbill

Source§

impl Mul for Percent

Source§

impl Mul for Permill

Source§

impl Mul for Perquintill

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Mul for Saturating<usize>

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

1.0.0 (const: unstable) · Source§

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

Source§

impl Mul for Checked<Limb>

Source§

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

Source§

impl Mul for curve25519_dalek::scalar::Scalar

Source§

impl Mul for k256::arithmetic::scalar::Scalar

Source§

impl Mul for Field

Source§

impl Mul for libsecp256k1_core::scalar::Scalar

Source§

impl Mul for primitive_types::U128

1.0.0 (const: unstable) · Source§

impl Mul<&f16> for &f16

1.0.0 (const: unstable) · Source§

impl Mul<&f16> for f16

1.0.0 (const: unstable) · Source§

impl Mul<&f32> for &f32

Source§

impl Mul<&f32> for &Rgb

1.0.0 (const: unstable) · Source§

impl Mul<&f32> for f32

Source§

impl Mul<&f32> for Rgb

1.0.0 (const: unstable) · Source§

impl Mul<&f64> for &f64

1.0.0 (const: unstable) · Source§

impl Mul<&f64> for f64

1.0.0 (const: unstable) · Source§

impl Mul<&f128> for &f128

1.0.0 (const: unstable) · Source§

impl Mul<&f128> for f128

1.0.0 (const: unstable) · Source§

impl Mul<&i8> for &i8

1.0.0 (const: unstable) · Source§

impl Mul<&i8> for i8

1.0.0 (const: unstable) · Source§

impl Mul<&i16> for &i16

1.0.0 (const: unstable) · Source§

impl Mul<&i16> for i16

1.0.0 (const: unstable) · Source§

impl Mul<&i32> for &i32

1.0.0 (const: unstable) · Source§

impl Mul<&i32> for i32

1.0.0 (const: unstable) · Source§

impl Mul<&i64> for &i64

1.0.0 (const: unstable) · Source§

impl Mul<&i64> for i64

1.0.0 (const: unstable) · Source§

impl Mul<&i128> for &i128

1.0.0 (const: unstable) · Source§

impl Mul<&i128> for i128

1.0.0 (const: unstable) · Source§

impl Mul<&isize> for &isize

1.0.0 (const: unstable) · Source§

impl Mul<&isize> for isize

1.0.0 (const: unstable) · Source§

impl Mul<&u8> for &u8

1.0.0 (const: unstable) · Source§

impl Mul<&u8> for u8

1.0.0 (const: unstable) · Source§

impl Mul<&u16> for &u16

1.0.0 (const: unstable) · Source§

impl Mul<&u16> for u16

1.0.0 (const: unstable) · Source§

impl Mul<&u32> for &u32

1.0.0 (const: unstable) · Source§

impl Mul<&u32> for u32

1.0.0 (const: unstable) · Source§

impl Mul<&u64> for &u64

1.0.0 (const: unstable) · Source§

impl Mul<&u64> for u64

1.0.0 (const: unstable) · Source§

impl Mul<&u128> for &u128

1.0.0 (const: unstable) · Source§

impl Mul<&u128> for u128

1.0.0 (const: unstable) · Source§

impl Mul<&usize> for &usize

1.0.0 (const: unstable) · Source§

impl Mul<&usize> for usize

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i8>> for &Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i8>> for Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i16>> for &Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i16>> for Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i32>> for &Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i32>> for Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i64>> for &Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i64>> for Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i128>> for &Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<i128>> for Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<isize>> for &Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<isize>> for Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u8>> for &Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u8>> for Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u16>> for &Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u16>> for Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u32>> for &Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u32>> for Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u64>> for &Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u64>> for Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u128>> for &Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<u128>> for Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<usize>> for &Saturating<usize>

1.74.0 (const: unstable) · Source§

impl Mul<&Saturating<usize>> for Saturating<usize>

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

Source§

impl Mul<&Checked<Limb>> for &Checked<Limb>

Source§

impl Mul<&Checked<Limb>> for Checked<Limb>

Source§

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

Source§

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

Source§

impl Mul<&MontgomeryPoint> for &curve25519_dalek::scalar::Scalar

Source§

impl Mul<&Scalar> for &MontgomeryPoint

Multiply this MontgomeryPoint by a Scalar.

Source§

impl Mul<&Scalar> for &ProjectivePoint

Source§

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

Source§

impl Mul<&Scalar> for AffinePoint

Source§

impl Mul<&Scalar> for ProjectivePoint

Source§

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

Source§

impl Mul<&Rgb> for &f32

Source§

impl Mul<&Rgb> for f32

1.0.0 (const: unstable) · Source§

impl Mul<f16> for &f16

1.0.0 (const: unstable) · Source§

impl Mul<f32> for &f32

Source§

impl Mul<f32> for &Rgb

Source§

impl Mul<f32> for Rgb

Source§

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

1.0.0 (const: unstable) · Source§

impl Mul<f64> for &f64

Source§

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

1.0.0 (const: unstable) · Source§

impl Mul<f128> for &f128

1.0.0 (const: unstable) · Source§

impl Mul<i8> for &i8

Source§

impl Mul<i8> for U256

Source§

impl Mul<i8> for U512

Source§

impl Mul<i8> for primitive_types::U128

Source§

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

1.0.0 (const: unstable) · Source§

impl Mul<i16> for &i16

Source§

impl Mul<i16> for U256

Source§

impl Mul<i16> for U512

Source§

impl Mul<i16> for primitive_types::U128

Source§

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

1.0.0 (const: unstable) · Source§

impl Mul<i32> for &i32

Source§

impl Mul<i32> for U256

Source§

impl Mul<i32> for U512

Source§

impl Mul<i32> for primitive_types::U128

Source§

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

1.0.0 (const: unstable) · Source§

impl Mul<i64> for &i64

Source§

impl Mul<i64> for U256

Source§

impl Mul<i64> for U512

Source§

impl Mul<i64> for primitive_types::U128

1.0.0 (const: unstable) · Source§

impl Mul<i128> for &i128

1.0.0 (const: unstable) · Source§

impl Mul<isize> for &isize

Source§

impl Mul<isize> for U256

Source§

impl Mul<isize> for U512

Source§

impl Mul<isize> for primitive_types::U128

1.0.0 (const: unstable) · Source§

impl Mul<u8> for &u8

Source§

impl Mul<u8> for U256

Source§

impl Mul<u8> for U512

Source§

impl Mul<u8> for primitive_types::U128

Source§

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

1.0.0 (const: unstable) · Source§

impl Mul<u16> for &u16

Source§

impl Mul<u16> for U256

Source§

impl Mul<u16> for U512

Source§

impl Mul<u16> for primitive_types::U128

Source§

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

1.0.0 (const: unstable) · Source§

impl Mul<u32> for &u32

Source§

impl Mul<u32> for U256

Source§

impl Mul<u32> for U512

1.3.0 (const: unstable) · Source§

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

Source§

impl Mul<u32> for primitive_types::U128

Source§

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

1.0.0 (const: unstable) · Source§

impl Mul<u64> for &u64

Source§

impl Mul<u64> for U256

Source§

impl Mul<u64> for U512

Source§

impl Mul<u64> for primitive_types::U128

1.0.0 (const: unstable) · Source§

impl Mul<u128> for &u128

1.0.0 (const: unstable) · Source§

impl Mul<usize> for &usize

Source§

impl Mul<usize> for U256

Source§

impl Mul<usize> for U512

Source§

impl Mul<usize> for primitive_types::U128

Source§

impl Mul<Weight> for u8

Source§

impl Mul<Weight> for u16

Source§

impl Mul<Weight> for u32

Source§

impl Mul<Weight> for u64

Source§

impl Mul<Weight> for PerU16

Source§

impl Mul<Weight> for Perbill

Source§

impl Mul<Weight> for Percent

Source§

impl Mul<Weight> for Permill

Source§

impl Mul<Weight> for Perquintill

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<i8>> for &Saturating<i8>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<i16>> for &Saturating<i16>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<i32>> for &Saturating<i32>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<i64>> for &Saturating<i64>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<i128>> for &Saturating<i128>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<isize>> for &Saturating<isize>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<u8>> for &Saturating<u8>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<u16>> for &Saturating<u16>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<u32>> for &Saturating<u32>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<u64>> for &Saturating<u64>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<u128>> for &Saturating<u128>

1.74.0 (const: unstable) · Source§

impl Mul<Saturating<usize>> for &Saturating<usize>

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.14.0 (const: unstable) · Source§

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

1.31.0 (const: unstable) · Source§

impl Mul<Duration> for u32

Source§

impl Mul<Checked<Limb>> for &Checked<Limb>

Source§

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

Source§

impl Mul<EdwardsPoint> for curve25519_dalek::scalar::Scalar

Source§

impl Mul<MontgomeryPoint> for curve25519_dalek::scalar::Scalar

Source§

impl Mul<RistrettoPoint> for curve25519_dalek::scalar::Scalar

Source§

impl Mul<Scalar> for EdwardsPoint

Source§

impl Mul<Scalar> for MontgomeryPoint

Source§

impl Mul<Scalar> for RistrettoPoint

Source§

impl Mul<Scalar> for AffinePoint

Source§

impl Mul<Scalar> for ProjectivePoint

Source§

impl Mul<Rgb> for &f32

Source§

impl Mul<Rgb> for f32

Source§

impl Mul<Duration> for f32

Source§

impl Mul<Duration> for f64

Source§

impl Mul<Duration> for i8

Source§

impl Mul<Duration> for i16

Source§

impl Mul<Duration> for i32

Source§

impl Mul<Duration> for u8

Source§

impl Mul<Duration> for u16

Source§

impl Mul<Duration> for u32

Source§

impl Mul<ATerm> for Z0

Source§

impl Mul<B0> for UTerm

UTerm * B0 = UTerm

Source§

impl Mul<B1> for UTerm

UTerm * B1 = UTerm

Source§

impl<'a> Mul for &'a U256

Source§

impl<'a> Mul for &'a U512

Source§

impl<'a> Mul for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a i8> for &'a U256

Source§

impl<'a> Mul<&'a i8> for &'a U512

Source§

impl<'a> Mul<&'a i8> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a i8> for U256

Source§

impl<'a> Mul<&'a i8> for U512

Source§

impl<'a> Mul<&'a i8> for primitive_types::U128

Source§

impl<'a> Mul<&'a i16> for &'a U256

Source§

impl<'a> Mul<&'a i16> for &'a U512

Source§

impl<'a> Mul<&'a i16> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a i16> for U256

Source§

impl<'a> Mul<&'a i16> for U512

Source§

impl<'a> Mul<&'a i16> for primitive_types::U128

Source§

impl<'a> Mul<&'a i32> for &'a U256

Source§

impl<'a> Mul<&'a i32> for &'a U512

Source§

impl<'a> Mul<&'a i32> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a i32> for U256

Source§

impl<'a> Mul<&'a i32> for U512

Source§

impl<'a> Mul<&'a i32> for primitive_types::U128

Source§

impl<'a> Mul<&'a i64> for &'a U256

Source§

impl<'a> Mul<&'a i64> for &'a U512

Source§

impl<'a> Mul<&'a i64> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a i64> for U256

Source§

impl<'a> Mul<&'a i64> for U512

Source§

impl<'a> Mul<&'a i64> for primitive_types::U128

Source§

impl<'a> Mul<&'a isize> for &'a U256

Source§

impl<'a> Mul<&'a isize> for &'a U512

Source§

impl<'a> Mul<&'a isize> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a isize> for U256

Source§

impl<'a> Mul<&'a isize> for U512

Source§

impl<'a> Mul<&'a isize> for primitive_types::U128

Source§

impl<'a> Mul<&'a u8> for &'a U256

Source§

impl<'a> Mul<&'a u8> for &'a U512

Source§

impl<'a> Mul<&'a u8> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a u8> for U256

Source§

impl<'a> Mul<&'a u8> for U512

Source§

impl<'a> Mul<&'a u8> for primitive_types::U128

Source§

impl<'a> Mul<&'a u16> for &'a U256

Source§

impl<'a> Mul<&'a u16> for &'a U512

Source§

impl<'a> Mul<&'a u16> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a u16> for U256

Source§

impl<'a> Mul<&'a u16> for U512

Source§

impl<'a> Mul<&'a u16> for primitive_types::U128

Source§

impl<'a> Mul<&'a u32> for &'a U256

Source§

impl<'a> Mul<&'a u32> for &'a U512

Source§

impl<'a> Mul<&'a u32> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a u32> for U256

Source§

impl<'a> Mul<&'a u32> for U512

Source§

impl<'a> Mul<&'a u32> for primitive_types::U128

Source§

impl<'a> Mul<&'a u64> for &'a U256

Source§

impl<'a> Mul<&'a u64> for &'a U512

Source§

impl<'a> Mul<&'a u64> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a u64> for U256

Source§

impl<'a> Mul<&'a u64> for U512

Source§

impl<'a> Mul<&'a u64> for primitive_types::U128

Source§

impl<'a> Mul<&'a usize> for &'a U256

Source§

impl<'a> Mul<&'a usize> for &'a U512

Source§

impl<'a> Mul<&'a usize> for &'a primitive_types::U128

Source§

impl<'a> Mul<&'a usize> for U256

Source§

impl<'a> Mul<&'a usize> for U512

Source§

impl<'a> Mul<&'a usize> for primitive_types::U128

Source§

impl<'a> Mul<&'a U256> for U256

Source§

impl<'a> Mul<&'a U512> for U512

Source§

impl<'a> Mul<&'a U128> for primitive_types::U128

Source§

impl<'a> Mul<i8> for &'a U256

Source§

impl<'a> Mul<i8> for &'a U512

Source§

impl<'a> Mul<i8> for &'a primitive_types::U128

Source§

impl<'a> Mul<i16> for &'a U256

Source§

impl<'a> Mul<i16> for &'a U512

Source§

impl<'a> Mul<i16> for &'a primitive_types::U128

Source§

impl<'a> Mul<i32> for &'a U256

Source§

impl<'a> Mul<i32> for &'a U512

Source§

impl<'a> Mul<i32> for &'a primitive_types::U128

Source§

impl<'a> Mul<i64> for &'a U256

Source§

impl<'a> Mul<i64> for &'a U512

Source§

impl<'a> Mul<i64> for &'a primitive_types::U128

Source§

impl<'a> Mul<isize> for &'a U256

Source§

impl<'a> Mul<isize> for &'a U512

Source§

impl<'a> Mul<isize> for &'a primitive_types::U128

Source§

impl<'a> Mul<u8> for &'a U256

Source§

impl<'a> Mul<u8> for &'a U512

Source§

impl<'a> Mul<u8> for &'a primitive_types::U128

Source§

impl<'a> Mul<u16> for &'a U256

Source§

impl<'a> Mul<u16> for &'a U512

Source§

impl<'a> Mul<u16> for &'a primitive_types::U128

Source§

impl<'a> Mul<u32> for &'a U256

Source§

impl<'a> Mul<u32> for &'a U512

Source§

impl<'a> Mul<u32> for &'a primitive_types::U128

Source§

impl<'a> Mul<u64> for &'a U256

Source§

impl<'a> Mul<u64> for &'a U512

Source§

impl<'a> Mul<u64> for &'a primitive_types::U128

Source§

impl<'a> Mul<usize> for &'a U256

Source§

impl<'a> Mul<usize> for &'a U512

Source§

impl<'a> Mul<usize> for &'a primitive_types::U128

Source§

impl<'a> Mul<U256> for &'a U256

Source§

impl<'a> Mul<U512> for &'a U512

Source§

impl<'a> Mul<EdwardsPoint> for &'a curve25519_dalek::scalar::Scalar

Source§

impl<'a> Mul<MontgomeryPoint> for &'a curve25519_dalek::scalar::Scalar

Source§

impl<'a> Mul<RistrettoPoint> for &'a curve25519_dalek::scalar::Scalar

Source§

impl<'a> Mul<Scalar> for &'a EdwardsPoint

Source§

impl<'a> Mul<Scalar> for &'a MontgomeryPoint

Source§

impl<'a> Mul<Scalar> for &'a RistrettoPoint

Source§

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

Source§

impl<'a> Mul<U128> for &'a primitive_types::U128

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Available on crate feature precomputed-tables only.
Source§

impl<'a, 'b> Mul<&'a Field> for &'b Field

Source§

impl<'a, 'b> Mul<&'a Scalar> for &'b libsecp256k1_core::scalar::Scalar

Source§

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

Source§

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

Source§

impl<'a, 'b> Mul<&'b Scalar> for &'a EdwardsBasepointTable

Source§

impl<'a, 'b> Mul<&'b Scalar> for &'a EdwardsBasepointTableRadix32

Source§

impl<'a, 'b> Mul<&'b Scalar> for &'a EdwardsBasepointTableRadix64

Source§

impl<'a, 'b> Mul<&'b Scalar> for &'a EdwardsBasepointTableRadix128

Source§

impl<'a, 'b> Mul<&'b Scalar> for &'a EdwardsBasepointTableRadix256

Source§

impl<'a, 'b> Mul<&'b Scalar> for &'a EdwardsPoint

Source§

impl<'a, 'b> Mul<&'b Scalar> for &'a RistrettoBasepointTable

Available on crate feature precomputed-tables only.
Source§

impl<'a, 'b> Mul<&'b Scalar> for &'a RistrettoPoint

Source§

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

Source§

impl<'b> Mul<&'b EdwardsPoint> for curve25519_dalek::scalar::Scalar

Source§

impl<'b> Mul<&'b MontgomeryPoint> for curve25519_dalek::scalar::Scalar

Source§

impl<'b> Mul<&'b RistrettoPoint> for curve25519_dalek::scalar::Scalar

Source§

impl<'b> Mul<&'b Scalar> for EdwardsPoint

Source§

impl<'b> Mul<&'b Scalar> for MontgomeryPoint

Source§

impl<'b> Mul<&'b Scalar> for RistrettoPoint

Source§

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

Source§

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

Source§

type Output = Simd<T, N>

Source§

impl<C> Mul for NonZeroScalar<C>

Source§

impl<C> Mul<&NonZeroScalar<C>> for NonZeroScalar<C>

Source§

impl<C, P> Mul<&NonZeroScalar<C>> for &NonIdentity<P>
where C: CurveArithmetic, P: Copy + Mul<<C as CurveArithmetic>::Scalar, Output = P>,

Source§

impl<C, P> Mul<NonZeroScalar<C>> for NonIdentity<P>
where C: CurveArithmetic, P: Copy + Mul<<C as CurveArithmetic>::Scalar, Output = P>,

Source§

impl<G, const WINDOW_SIZE: usize> Mul<&WnafScalar<<G as Group>::Scalar, WINDOW_SIZE>> for &WnafBase<G, WINDOW_SIZE>
where G: Group,

Source§

impl<I> Mul<I> for Z0
where I: Integer,

Z0 * I = Z0

Source§

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

Source§

type Output = Residue<MOD, LIMBS>

Source§

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

Source§

type Output = Residue<MOD, LIMBS>

Source§

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

Source§

type Output = Residue<MOD, LIMBS>

Source§

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

Source§

type Output = Residue<MOD, LIMBS>

Source§

impl<N> Mul<N> for PerU16
where N: Div<Output = N> + Clone + Mul<Output = N> + UniqueSaturatedInto<u16> + Add<Output = N> + Rem<Output = N> + Unsigned, u16: Into<N>,

Non-overflow multiplication.

This is tailored to be used with a balance type.

Source§

impl<N> Mul<N> for Perbill
where N: Div<Output = N> + Clone + Mul<Output = N> + UniqueSaturatedInto<u32> + Add<Output = N> + Rem<Output = N> + Unsigned, u32: Into<N>,

Non-overflow multiplication.

This is tailored to be used with a balance type.

Source§

impl<N> Mul<N> for Percent
where N: Div<Output = N> + Clone + Mul<Output = N> + UniqueSaturatedInto<u8> + Add<Output = N> + Rem<Output = N> + Unsigned, u8: Into<N>,

Non-overflow multiplication.

This is tailored to be used with a balance type.

Source§

impl<N> Mul<N> for Permill
where N: Div<Output = N> + Clone + Mul<Output = N> + UniqueSaturatedInto<u32> + Add<Output = N> + Rem<Output = N> + Unsigned, u32: Into<N>,

Non-overflow multiplication.

This is tailored to be used with a balance type.

Source§

impl<N> Mul<N> for Perquintill
where N: Div<Output = N> + Clone + Mul<Output = N> + UniqueSaturatedInto<u64> + Add<Output = N> + Rem<Output = N> + Unsigned, u64: Into<N>,

Non-overflow multiplication.

This is tailored to be used with a balance type.

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<Rhs> Mul<Rhs> for ATerm

Source§

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

Source§

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

Source§

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

Source§

type Output = Simd<T, N>

Source§

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

Source§

type Output = Simd<T, N>

Source§

impl<U> Mul<ATerm> for NInt<U>
where U: Unsigned + NonZero,

Source§

impl<U> Mul<ATerm> for PInt<U>
where U: Unsigned + NonZero,

Source§

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

N * Z0 = Z0

Source§

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

P * Z0 = Z0

Source§

impl<U> Mul<U> for UTerm
where U: Unsigned,

UTerm * U = UTerm

Source§

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

UInt * B0 = UTerm

Source§

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

UInt * B1 = UInt

Source§

type Output = UInt<U, B>

Source§

impl<U, B> Mul<UTerm> for UInt<U, B>
where U: Unsigned, B: Bit,

UInt<U, B> * UTerm = UTerm

Source§

impl<Ul, B, Ur> Mul<UInt<Ur, B>> for UInt<Ul, B0>
where Ul: Unsigned + Mul<UInt<Ur, B>>, B: Bit, Ur: Unsigned,

UInt<Ul, B0> * UInt<Ur, B> = UInt<(Ul * UInt<Ur, B>), B0>

Source§

type Output = UInt<<Ul as Mul<UInt<Ur, B>>>::Output, B0>

Source§

impl<Ul, B, Ur> Mul<UInt<Ur, B>> for UInt<Ul, B1>
where Ul: Unsigned + Mul<UInt<Ur, B>>, B: Bit, Ur: Unsigned, UInt<<Ul as Mul<UInt<Ur, B>>>::Output, B0>: Add<UInt<Ur, B>>,

UInt<Ul, B1> * UInt<Ur, B> = UInt<(Ul * UInt<Ur, B>), B0> + UInt<Ur, B>

Source§

type Output = <UInt<<Ul as Mul<UInt<Ur, B>>>::Output, B0> as Add<UInt<Ur, B>>>::Output

Source§

impl<Ul, Ur> Mul<NInt<Ur>> for NInt<Ul>
where Ul: Unsigned + NonZero + Mul<Ur>, Ur: Unsigned + NonZero, <Ul as Mul<Ur>>::Output: Unsigned + NonZero,

N(Ul) * N(Ur) = P(Ul * Ur)

Source§

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

Source§

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

P(Ul) * N(Ur) = N(Ul * Ur)

Source§

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

Source§

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

N(Ul) * P(Ur) = N(Ul * Ur)

Source§

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

Source§

impl<Ul, Ur> Mul<PInt<Ur>> for PInt<Ul>
where Ul: Unsigned + NonZero + Mul<Ur>, Ur: Unsigned + NonZero, <Ul as Mul<Ur>>::Output: Unsigned + NonZero,

P(Ul) * P(Ur) = P(Ul * Ur)

Source§

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

Source§

impl<V, A> Mul<TArr<V, A>> for Z0
where Z0: Mul<A>,

Source§

type Output = TArr<Z0, <Z0 as Mul<A>>::Output>

Source§

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

Source§

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

Source§

impl<V, A, U> Mul<TArr<V, A>> for NInt<U>
where U: Unsigned + NonZero, NInt<U>: Mul<A> + Mul<V>,

Source§

type Output = TArr<<NInt<U> as Mul<V>>::Output, <NInt<U> as Mul<A>>::Output>

Source§

impl<V, A, U> Mul<TArr<V, A>> for PInt<U>
where U: Unsigned + NonZero, PInt<U>: Mul<A> + Mul<V>,

Source§

type Output = TArr<<PInt<U> as Mul<V>>::Output, <PInt<U> as Mul<A>>::Output>

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<&Checked<Uint<HLIMBS>>> for &Checked<Uint<LIMBS>>

Source§

type Output = Checked<Uint<LIMBS>>

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<&Checked<Uint<HLIMBS>>> for Checked<Uint<LIMBS>>

Source§

type Output = Checked<Uint<LIMBS>>

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<&Uint<HLIMBS>> for &Uint<LIMBS>
where Uint<HLIMBS>: ConcatMixed<Uint<LIMBS>>,

Source§

type Output = <Uint<HLIMBS> as ConcatMixed<Uint<LIMBS>>>::MixedOutput

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<&Uint<HLIMBS>> for Uint<LIMBS>
where Uint<HLIMBS>: ConcatMixed<Uint<LIMBS>>,

Source§

type Output = <Uint<HLIMBS> as ConcatMixed<Uint<LIMBS>>>::MixedOutput

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<&Wrapping<Uint<HLIMBS>>> for &crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<&Wrapping<Uint<HLIMBS>>> for crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<Checked<Uint<HLIMBS>>> for &Checked<Uint<LIMBS>>

Source§

type Output = Checked<Uint<LIMBS>>

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<Checked<Uint<HLIMBS>>> for Checked<Uint<LIMBS>>

Source§

type Output = Checked<Uint<LIMBS>>

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<Uint<HLIMBS>> for &Uint<LIMBS>
where Uint<HLIMBS>: ConcatMixed<Uint<LIMBS>>,

Source§

type Output = <Uint<HLIMBS> as ConcatMixed<Uint<LIMBS>>>::MixedOutput

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<Uint<HLIMBS>> for Uint<LIMBS>
where Uint<HLIMBS>: ConcatMixed<Uint<LIMBS>>,

Source§

type Output = <Uint<HLIMBS> as ConcatMixed<Uint<LIMBS>>>::MixedOutput

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<Wrapping<Uint<HLIMBS>>> for &crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

impl<const LIMBS: usize, const HLIMBS: usize> Mul<Wrapping<Uint<HLIMBS>>> for crypto_bigint::wrapping::Wrapping<Uint<LIMBS>>

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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