pub trait LowerHex { fn fmt(&self, f: &mut Formatter) -> Result<(), Error>; }
x
formatting.
The LowerHex
trait should format its output as a number in hexadecimal, with a
through f
in lower case.
The alternate flag, #
, adds a 0x
in front of the output.
For more information on formatters, see the module-level documentation.
Basic usage with i32
:
let x = 42; // 42 is '2a' in hex assert_eq!(format!("{:x}", x), "2a"); assert_eq!(format!("{:#x}", x), "0x2a");
Implementing LowerHex
on a type:
use std::fmt; struct Length(i32); impl fmt::LowerHex for Length { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { let val = self.0; write!(f, "{:x}", val) // delegate to i32's implementation } } let l = Length(9); println!("l as hex is: {:x}", l);
impl LowerHex for i32
impl LowerHex for u8
impl LowerHex for i128
impl<'a, T> LowerHex for &'a mut T where
T: LowerHex + ?Sized,
impl LowerHex for u64
impl LowerHex for u32
impl<T> LowerHex for Wrapping<T> where
T: LowerHex,
impl LowerHex for i8
impl LowerHex for usize
impl LowerHex for u16
impl LowerHex for i16
impl<'a, T> LowerHex for &'a T where
T: LowerHex + ?Sized,
impl LowerHex for u128
impl LowerHex for i64
impl LowerHex for isize
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/fmt/trait.LowerHex.html