DTypePromoteAPI

Trait DTypePromoteAPI 

Source
pub trait DTypePromoteAPI<T> {
    type Res;

    const SAME_TYPE: bool = false;
    const CAN_CAST_SELF: bool = false;
    const CAN_CAST_OTHER: bool = false;

    // Required methods
    fn promote_self(self) -> Self::Res;
    fn promote_other(val: T) -> Self::Res;

    // Provided method
    fn promote_pair(self, val: T) -> (Self::Res, Self::Res)
       where Self: Sized { ... }
}

Provided Associated Constants§

Source

const SAME_TYPE: bool = false

Source

const CAN_CAST_SELF: bool = false

Source

const CAN_CAST_OTHER: bool = false

Required Associated Types§

Required Methods§

Source

fn promote_self(self) -> Self::Res

Source

fn promote_other(val: T) -> Self::Res

Provided Methods§

Source

fn promote_pair(self, val: T) -> (Self::Res, Self::Res)
where Self: Sized,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl DTypePromoteAPI<bool> for f32

Source§

impl DTypePromoteAPI<bool> for f64

Source§

impl DTypePromoteAPI<bool> for i8

Source§

impl DTypePromoteAPI<bool> for i16

Source§

impl DTypePromoteAPI<bool> for i32

Source§

impl DTypePromoteAPI<bool> for i64

Source§

impl DTypePromoteAPI<bool> for isize

Source§

impl DTypePromoteAPI<bool> for u8

Source§

impl DTypePromoteAPI<bool> for u16

Source§

impl DTypePromoteAPI<bool> for u32

Source§

impl DTypePromoteAPI<bool> for u64

Source§

impl DTypePromoteAPI<bool> for usize

Source§

impl DTypePromoteAPI<bool> for bf16

Source§

impl DTypePromoteAPI<bool> for f16

Source§

impl DTypePromoteAPI<bool> for Complex<f32>

Source§

impl DTypePromoteAPI<bool> for Complex<f64>

Source§

impl DTypePromoteAPI<f32> for bool

Source§

impl DTypePromoteAPI<f32> for f64

Source§

impl DTypePromoteAPI<f32> for i8

Source§

impl DTypePromoteAPI<f32> for i16

Source§

impl DTypePromoteAPI<f32> for i32

Source§

impl DTypePromoteAPI<f32> for i64

Source§

impl DTypePromoteAPI<f32> for isize

Source§

impl DTypePromoteAPI<f32> for u8

Source§

impl DTypePromoteAPI<f32> for u16

Source§

impl DTypePromoteAPI<f32> for u32

Source§

impl DTypePromoteAPI<f32> for u64

Source§

impl DTypePromoteAPI<f32> for usize

Source§

impl DTypePromoteAPI<f32> for Complex<f32>

Source§

impl DTypePromoteAPI<f32> for Complex<f64>

Source§

impl DTypePromoteAPI<f64> for bool

Source§

impl DTypePromoteAPI<f64> for f32

Source§

impl DTypePromoteAPI<f64> for i8

Source§

impl DTypePromoteAPI<f64> for i16

Source§

impl DTypePromoteAPI<f64> for i32

Source§

impl DTypePromoteAPI<f64> for i64

Source§

impl DTypePromoteAPI<f64> for isize

Source§

impl DTypePromoteAPI<f64> for u8

Source§

impl DTypePromoteAPI<f64> for u16

Source§

impl DTypePromoteAPI<f64> for u32

Source§

impl DTypePromoteAPI<f64> for u64

Source§

impl DTypePromoteAPI<f64> for usize

Source§

impl DTypePromoteAPI<f64> for Complex<f32>

Source§

impl DTypePromoteAPI<f64> for Complex<f64>

Source§

impl DTypePromoteAPI<i8> for bool

Source§

impl DTypePromoteAPI<i8> for f32

Source§

impl DTypePromoteAPI<i8> for f64

Source§

impl DTypePromoteAPI<i8> for i16

Source§

impl DTypePromoteAPI<i8> for i32

Source§

impl DTypePromoteAPI<i8> for i64

Source§

impl DTypePromoteAPI<i8> for isize

Source§

impl DTypePromoteAPI<i8> for u8

Source§

impl DTypePromoteAPI<i8> for u16

Source§

impl DTypePromoteAPI<i8> for u32

Source§

impl DTypePromoteAPI<i8> for u64

Source§

impl DTypePromoteAPI<i8> for usize

Source§

impl DTypePromoteAPI<i8> for Complex<f32>

Source§

impl DTypePromoteAPI<i8> for Complex<f64>

Source§

impl DTypePromoteAPI<i16> for bool

Source§

impl DTypePromoteAPI<i16> for f32

Source§

impl DTypePromoteAPI<i16> for f64

Source§

impl DTypePromoteAPI<i16> for i32

Source§

impl DTypePromoteAPI<i16> for i64

Source§

impl DTypePromoteAPI<i16> for isize

Source§

impl DTypePromoteAPI<i16> for u8

Source§

impl DTypePromoteAPI<i16> for u16

Source§

impl DTypePromoteAPI<i16> for u32

Source§

impl DTypePromoteAPI<i16> for u64

Source§

impl DTypePromoteAPI<i16> for usize

Source§

impl DTypePromoteAPI<i16> for Complex<f32>

Source§

impl DTypePromoteAPI<i16> for Complex<f64>

Source§

impl DTypePromoteAPI<i32> for bool

Source§

impl DTypePromoteAPI<i32> for f32

Source§

impl DTypePromoteAPI<i32> for f64

Source§

impl DTypePromoteAPI<i32> for i8

Source§

impl DTypePromoteAPI<i32> for i16

Source§

impl DTypePromoteAPI<i32> for i64

Source§

impl DTypePromoteAPI<i32> for isize

Source§

impl DTypePromoteAPI<i32> for u8

Source§

impl DTypePromoteAPI<i32> for u16

Source§

impl DTypePromoteAPI<i32> for u32

Source§

impl DTypePromoteAPI<i32> for u64

Source§

impl DTypePromoteAPI<i32> for usize

Source§

impl DTypePromoteAPI<i32> for Complex<f32>

Source§

impl DTypePromoteAPI<i32> for Complex<f64>

Source§

impl DTypePromoteAPI<i64> for bool

Source§

impl DTypePromoteAPI<i64> for f32

Source§

impl DTypePromoteAPI<i64> for f64

Source§

impl DTypePromoteAPI<i64> for i8

Source§

impl DTypePromoteAPI<i64> for i16

Source§

impl DTypePromoteAPI<i64> for i32

Source§

impl DTypePromoteAPI<i64> for isize

Source§

impl DTypePromoteAPI<i64> for u8

Source§

impl DTypePromoteAPI<i64> for u16

Source§

impl DTypePromoteAPI<i64> for u32

Source§

impl DTypePromoteAPI<i64> for u64

Source§

impl DTypePromoteAPI<i64> for usize

Source§

impl DTypePromoteAPI<i64> for Complex<f32>

Source§

impl DTypePromoteAPI<i64> for Complex<f64>

Source§

impl DTypePromoteAPI<isize> for bool

Source§

impl DTypePromoteAPI<isize> for f32

Source§

impl DTypePromoteAPI<isize> for f64

Source§

impl DTypePromoteAPI<isize> for i8

Source§

impl DTypePromoteAPI<isize> for i16

Source§

impl DTypePromoteAPI<isize> for i32

Source§

impl DTypePromoteAPI<isize> for i64

Source§

impl DTypePromoteAPI<isize> for u8

Source§

impl DTypePromoteAPI<isize> for u16

Source§

impl DTypePromoteAPI<isize> for u32

Source§

impl DTypePromoteAPI<isize> for u64

Source§

impl DTypePromoteAPI<isize> for Complex<f32>

Source§

impl DTypePromoteAPI<isize> for Complex<f64>

Source§

impl DTypePromoteAPI<u8> for bool

Source§

impl DTypePromoteAPI<u8> for f32

Source§

impl DTypePromoteAPI<u8> for f64

Source§

impl DTypePromoteAPI<u8> for i8

Source§

impl DTypePromoteAPI<u8> for i16

Source§

impl DTypePromoteAPI<u8> for i32

Source§

impl DTypePromoteAPI<u8> for i64

Source§

impl DTypePromoteAPI<u8> for isize

Source§

impl DTypePromoteAPI<u8> for u16

Source§

impl DTypePromoteAPI<u8> for u32

Source§

impl DTypePromoteAPI<u8> for u64

Source§

impl DTypePromoteAPI<u8> for usize

Source§

impl DTypePromoteAPI<u8> for Complex<f32>

Source§

impl DTypePromoteAPI<u8> for Complex<f64>

Source§

impl DTypePromoteAPI<u16> for bool

Source§

impl DTypePromoteAPI<u16> for f32

Source§

impl DTypePromoteAPI<u16> for f64

Source§

impl DTypePromoteAPI<u16> for i8

Source§

impl DTypePromoteAPI<u16> for i16

Source§

impl DTypePromoteAPI<u16> for i32

Source§

impl DTypePromoteAPI<u16> for i64

Source§

impl DTypePromoteAPI<u16> for isize

Source§

impl DTypePromoteAPI<u16> for u8

Source§

impl DTypePromoteAPI<u16> for u32

Source§

impl DTypePromoteAPI<u16> for u64

Source§

impl DTypePromoteAPI<u16> for usize

Source§

impl DTypePromoteAPI<u16> for Complex<f32>

Source§

impl DTypePromoteAPI<u16> for Complex<f64>

Source§

impl DTypePromoteAPI<u32> for bool

Source§

impl DTypePromoteAPI<u32> for f32

Source§

impl DTypePromoteAPI<u32> for f64

Source§

impl DTypePromoteAPI<u32> for i8

Source§

impl DTypePromoteAPI<u32> for i16

Source§

impl DTypePromoteAPI<u32> for i32

Source§

impl DTypePromoteAPI<u32> for i64

Source§

impl DTypePromoteAPI<u32> for isize

Source§

impl DTypePromoteAPI<u32> for u8

Source§

impl DTypePromoteAPI<u32> for u16

Source§

impl DTypePromoteAPI<u32> for u64

Source§

impl DTypePromoteAPI<u32> for usize

Source§

impl DTypePromoteAPI<u32> for Complex<f32>

Source§

impl DTypePromoteAPI<u32> for Complex<f64>

Source§

impl DTypePromoteAPI<u64> for bool

Source§

impl DTypePromoteAPI<u64> for f32

Source§

impl DTypePromoteAPI<u64> for f64

Source§

impl DTypePromoteAPI<u64> for i8

Source§

impl DTypePromoteAPI<u64> for i16

Source§

impl DTypePromoteAPI<u64> for i32

Source§

impl DTypePromoteAPI<u64> for i64

Source§

impl DTypePromoteAPI<u64> for isize

Source§

impl DTypePromoteAPI<u64> for u8

Source§

impl DTypePromoteAPI<u64> for u16

Source§

impl DTypePromoteAPI<u64> for u32

Source§

impl DTypePromoteAPI<u64> for usize

Source§

impl DTypePromoteAPI<u64> for Complex<f32>

Source§

impl DTypePromoteAPI<u64> for Complex<f64>

Source§

impl DTypePromoteAPI<usize> for bool

Source§

impl DTypePromoteAPI<usize> for f32

Source§

impl DTypePromoteAPI<usize> for f64

Source§

impl DTypePromoteAPI<usize> for i8

Source§

impl DTypePromoteAPI<usize> for i16

Source§

impl DTypePromoteAPI<usize> for i32

Source§

impl DTypePromoteAPI<usize> for i64

Source§

impl DTypePromoteAPI<usize> for u8

Source§

impl DTypePromoteAPI<usize> for u16

Source§

impl DTypePromoteAPI<usize> for u32

Source§

impl DTypePromoteAPI<usize> for u64

Source§

impl DTypePromoteAPI<usize> for Complex<f32>

Source§

impl DTypePromoteAPI<usize> for Complex<f64>

Source§

impl DTypePromoteAPI<bf16> for bool

Source§

impl DTypePromoteAPI<f16> for bool

Source§

impl DTypePromoteAPI<Complex<f32>> for bool

Source§

impl DTypePromoteAPI<Complex<f32>> for f32

Source§

impl DTypePromoteAPI<Complex<f32>> for f64

Source§

impl DTypePromoteAPI<Complex<f32>> for i8

Source§

impl DTypePromoteAPI<Complex<f32>> for i16

Source§

impl DTypePromoteAPI<Complex<f32>> for i32

Source§

impl DTypePromoteAPI<Complex<f32>> for i64

Source§

impl DTypePromoteAPI<Complex<f32>> for isize

Source§

impl DTypePromoteAPI<Complex<f32>> for u8

Source§

impl DTypePromoteAPI<Complex<f32>> for u16

Source§

impl DTypePromoteAPI<Complex<f32>> for u32

Source§

impl DTypePromoteAPI<Complex<f32>> for u64

Source§

impl DTypePromoteAPI<Complex<f32>> for usize

Source§

impl DTypePromoteAPI<Complex<f32>> for Complex<f64>

Source§

impl DTypePromoteAPI<Complex<f64>> for bool

Source§

impl DTypePromoteAPI<Complex<f64>> for f32

Source§

impl DTypePromoteAPI<Complex<f64>> for f64

Source§

impl DTypePromoteAPI<Complex<f64>> for i8

Source§

impl DTypePromoteAPI<Complex<f64>> for i16

Source§

impl DTypePromoteAPI<Complex<f64>> for i32

Source§

impl DTypePromoteAPI<Complex<f64>> for i64

Source§

impl DTypePromoteAPI<Complex<f64>> for isize

Source§

impl DTypePromoteAPI<Complex<f64>> for u8

Source§

impl DTypePromoteAPI<Complex<f64>> for u16

Source§

impl DTypePromoteAPI<Complex<f64>> for u32

Source§

impl DTypePromoteAPI<Complex<f64>> for u64

Source§

impl DTypePromoteAPI<Complex<f64>> for usize

Source§

impl DTypePromoteAPI<Complex<f64>> for Complex<f32>

Implementors§

Source§

impl<T> DTypePromoteAPI<T> for T