num::traits

Trait ToBytes

Source
pub trait ToBytes {
    type Bytes: NumBytes;

    // Required methods
    fn to_be_bytes(&self) -> Self::Bytes;
    fn to_le_bytes(&self) -> Self::Bytes;

    // Provided method
    fn to_ne_bytes(&self) -> Self::Bytes { ... }
}

Required Associated Types§

Required Methods§

Source

fn to_be_bytes(&self) -> Self::Bytes

Return the memory representation of this number as a byte array in big-endian byte order.

§Examples
use num_traits::ToBytes;

let bytes = ToBytes::to_be_bytes(&0x12345678u32);
assert_eq!(bytes, [0x12, 0x34, 0x56, 0x78]);
Source

fn to_le_bytes(&self) -> Self::Bytes

Return the memory representation of this number as a byte array in little-endian byte order.

§Examples
use num_traits::ToBytes;

let bytes = ToBytes::to_le_bytes(&0x12345678u32);
assert_eq!(bytes, [0x78, 0x56, 0x34, 0x12]);

Provided Methods§

Source

fn to_ne_bytes(&self) -> Self::Bytes

Return the memory representation of this number as a byte array in native byte order.

As the target platform’s native endianness is used, portable code should use to_be_bytes or to_le_bytes, as appropriate, instead.

§Examples
use num_traits::ToBytes;

#[cfg(target_endian = "big")]
let expected = [0x12, 0x34, 0x56, 0x78];

#[cfg(target_endian = "little")]
let expected = [0x78, 0x56, 0x34, 0x12];

let bytes = ToBytes::to_ne_bytes(&0x12345678u32);
assert_eq!(bytes, expected)

Implementations on Foreign Types§

Source§

impl ToBytes for f32

Source§

impl ToBytes for f64

Source§

impl ToBytes for i8

Source§

type Bytes = [u8; 1]

Source§

fn to_be_bytes(&self) -> <i8 as ToBytes>::Bytes

Source§

fn to_le_bytes(&self) -> <i8 as ToBytes>::Bytes

Source§

fn to_ne_bytes(&self) -> <i8 as ToBytes>::Bytes

Source§

impl ToBytes for i16

Source§

impl ToBytes for i32

Source§

impl ToBytes for i64

Source§

impl ToBytes for i128

Source§

impl ToBytes for isize

Source§

impl ToBytes for u8

Source§

type Bytes = [u8; 1]

Source§

fn to_be_bytes(&self) -> <u8 as ToBytes>::Bytes

Source§

fn to_le_bytes(&self) -> <u8 as ToBytes>::Bytes

Source§

fn to_ne_bytes(&self) -> <u8 as ToBytes>::Bytes

Source§

impl ToBytes for u16

Source§

impl ToBytes for u32

Source§

impl ToBytes for u64

Source§

impl ToBytes for u128

Source§

impl ToBytes for usize

Implementors§