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