Unsigned

Trait Unsigned 

Source
pub trait Unsigned:
    Sealed
    + Copy
    + Default
    + 'static {
    const U8: u8;
    const U16: u16;
    const U32: u32;
    const U64: u64;
    const USIZE: usize;
    const I8: i8;
    const I16: i16;
    const I32: i32;
    const I64: i64;
    const ISIZE: isize;

    // Required methods
    fn to_u8() -> u8;
    fn to_u16() -> u16;
    fn to_u32() -> u32;
    fn to_u64() -> u64;
    fn to_usize() -> usize;
    fn to_i8() -> i8;
    fn to_i16() -> i16;
    fn to_i32() -> i32;
    fn to_i64() -> i64;
    fn to_isize() -> isize;
}
Expand description

The marker trait for compile time unsigned integers.

§Example

use typenum::{Unsigned, U3};

assert_eq!(U3::to_u32(), 3);
assert_eq!(U3::I32, 3);

Required Associated Constants§

Required Methods§

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.

Implementors§

Source§

impl Unsigned for UTerm

Source§

const U8: u8 = 0

Source§

const U16: u16 = 0

Source§

const U32: u32 = 0

Source§

const U64: u64 = 0

Source§

const USIZE: usize = 0

Source§

const I8: i8 = 0

Source§

const I16: i16 = 0

Source§

const I32: i32 = 0

Source§

const I64: i64 = 0

Source§

const ISIZE: isize = 0

Source§

impl<U: Unsigned, B: Bit> Unsigned for UInt<U, B>