Trait UpperHex

1.0.0 ยท Source
pub trait UpperHex {
    // Required method
    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error> โ“˜;
}
Expand description

๐Ÿ–น core X formatting.

Re-exported from core::fmt:: .


X formatting.

The UpperHex trait should format its output as a number in hexadecimal, with A through F in upper case.

For primitive signed integers (i8 to i128, and isize), negative values are formatted as the twoโ€™s complement representation.

The alternate flag, #, adds a 0x in front of the output.

For more information on formatters, see the module-level documentation.

ยงExamples

Basic usage with i32:

let y = 42; // 42 is '2A' in hex

assert_eq!(format!("{y:X}"), "2A");
assert_eq!(format!("{y:#X}"), "0x2A");

assert_eq!(format!("{:X}", -16), "FFFFFFF0");

Implementing UpperHex on a type:

use std::fmt;

struct Length(i32);

impl fmt::UpperHex for Length {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        let val = self.0;

        fmt::UpperHex::fmt(&val, f) // delegate to i32's implementation
    }
}

let l = Length(i32::MAX);

assert_eq!(format!("l as hex is: {l:X}"), "l as hex is: 7FFFFFFF");

assert_eq!(format!("l as hex is: {l:#010X}"), "l as hex is: 0x7FFFFFFF");

Required Methodsยง

1.0.0 ยท Source

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error> โ“˜

Formats the value using the given formatter.

ยงErrors

This function should return Err if, and only if, the provided Formatter returns Err. String formatting is considered an infallible operation; this function only returns a Result because writing to the underlying stream might fail and it must provide a way to propagate the fact that an error has occurred back up the stack.

Implementorsยง

1.0.0 ยท Sourceยง

impl UpperHex for i8

1.0.0 ยท Sourceยง

impl UpperHex for i16

1.0.0 ยท Sourceยง

impl UpperHex for i32

1.0.0 ยท Sourceยง

impl UpperHex for i64

1.0.0 ยท Sourceยง

impl UpperHex for i128

1.0.0 ยท Sourceยง

impl UpperHex for isize

1.0.0 ยท Sourceยง

impl UpperHex for u8

1.0.0 ยท Sourceยง

impl UpperHex for u16

1.0.0 ยท Sourceยง

impl UpperHex for u32

1.0.0 ยท Sourceยง

impl UpperHex for u64

1.0.0 ยท Sourceยง

impl UpperHex for u128

1.0.0 ยท Sourceยง

impl UpperHex for usize

ยง

impl UpperHex for KeyEventState

ยง

impl UpperHex for KeyModifiers

ยง

impl UpperHex for KeyboardEnhancementFlags

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::codec::decoder::slice::Flags

ยง

impl UpperHex for Check

ยง

impl UpperHex for Conceal

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::codec::packet::Flags

ยง

impl UpperHex for Capabilities

ยง

impl UpperHex for CodecProperties

ยง

impl UpperHex for Debug

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::codec::Flags

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::codec::subtitle::Flags

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::filter::Flags

ยง

impl UpperHex for Disposition

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::format::Flags

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::software::resampling::Flags

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::software::scaling::Flags

ยง

impl UpperHex for ChannelLayoutMask

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::util::frame::Flags

ยง

impl UpperHex for devela::_dep::ffmpeg_the_third::util::log::Flags

ยง

impl UpperHex for Type

ยง

impl UpperHex for devela::_dep::sdl2::image::InitFlag

ยง

impl UpperHex for Mod

ยง

impl UpperHex for MessageBoxButtonFlag

ยง

impl UpperHex for MessageBoxFlag

ยง

impl UpperHex for AllowChangeFlag

ยง

impl UpperHex for devela::_dep::sdl2::mixer::InitFlag

ยง

impl UpperHex for FontStyle

ยง

impl UpperHex for Channels

ยง

impl UpperHex for f32x4

ยง

impl UpperHex for f32x8

ยง

impl UpperHex for f64x2

ยง

impl UpperHex for f64x4

ยง

impl UpperHex for i8x16

ยง

impl UpperHex for i8x32

ยง

impl UpperHex for i16x8

ยง

impl UpperHex for i16x16

ยง

impl UpperHex for i32x4

ยง

impl UpperHex for i32x8

ยง

impl UpperHex for i64x2

ยง

impl UpperHex for i64x4

ยง

impl UpperHex for u8x16

ยง

impl UpperHex for u8x32

ยง

impl UpperHex for u16x8

ยง

impl UpperHex for u16x16

ยง

impl UpperHex for u32x4

ยง

impl UpperHex for u32x8

ยง

impl UpperHex for u64x2

ยง

impl UpperHex for u64x4

ยง

impl UpperHex for devela::_dep::winnow::Bytes

Sourceยง

impl UpperHex for ExampleBitfield

Available on crate feature _bit_u8 and (doc or test) only.
Sourceยง

impl UpperHex for ExampleBitfieldCustom

Available on crate feature _bit_u8 and (doc or test) only.
Sourceยง

impl UpperHex for ExampleBitfieldExtra

Available on crate feature _bit_u8 and (doc or test) only.
Sourceยง

impl UpperHex for ExampleEnumSet

Available on doc or test only.
Sourceยง

impl UpperHex for char7

Sourceยง

impl UpperHex for char8

Sourceยง

impl UpperHex for char16

Sourceยง

impl UpperHex for BigInt

Sourceยง

impl UpperHex for BigUint

Sourceยง

impl UpperHex for Braced

Sourceยง

impl UpperHex for Hyphenated

Sourceยง

impl UpperHex for Simple

Sourceยง

impl UpperHex for Urn

Sourceยง

impl UpperHex for Uuid

ยง

impl UpperHex for m128

ยง

impl UpperHex for m128d

ยง

impl UpperHex for m128i

ยง

impl UpperHex for m256

ยง

impl UpperHex for m256d

ยง

impl UpperHex for m256i

ยง

impl UpperHex for Bytes

ยง

impl UpperHex for BytesMut

ยง

impl UpperHex for ControlModes

ยง

impl UpperHex for DupFlags

ยง

impl UpperHex for EfdFlags

ยง

impl UpperHex for EpollCreateFlags

ยง

impl UpperHex for EpollFlags

ยง

impl UpperHex for EventMask

ยง

impl UpperHex for FdFlags

ยง

impl UpperHex for Flags

ยง

impl UpperHex for InputModes

ยง

impl UpperHex for LocalModes

ยง

impl UpperHex for OutputModes

ยง

impl UpperHex for PortCap

ยง

impl UpperHex for PortType

ยง

impl UpperHex for ReadWriteFlags

ยง

impl UpperHex for Remove

ยง

impl UpperHex for Transformations

ยง

impl UpperHex for WatchMask

ยง

impl<'a, I> UpperHex for Format<'a, I>
where I: Iterator, <I as Iterator>::Item: UpperHex,

Sourceยง

impl<'t, T, F, U> UpperHex for OptionFmtOrElse<'t, T, F>
where T: UpperHex, F: Fn() -> U, U: Display,

Sourceยง

impl<'t, T, U> UpperHex for OptionFmtOr<'t, T, U>
where T: UpperHex, U: Display,

Sourceยง

impl<BUF: DstBuf, DST> UpperHex for DstValue<DST, BUF>
where DST: UpperHex + ?Sized,

Available on crate feature unsafe_layout only.
1.0.0 ยท Sourceยง

impl<T> UpperHex for &T
where T: UpperHex + ?Sized,

1.0.0 ยท Sourceยง

impl<T> UpperHex for &mut T
where T: UpperHex + ?Sized,

Sourceยง

impl<T> UpperHex for Frac<T>
where T: UpperHex,

Sourceยง

impl<T> UpperHex for Int<T>
where T: UpperHex,

Sourceยง

impl<T> UpperHex for Ratio<T>
where T: UpperHex + Clone + Integer,

Sourceยง

impl<T> UpperHex for Bitwise<T>
where T: UpperHex,

1.28.0 ยท Sourceยง

impl<T> UpperHex for NonZero<T>

Sourceยง

impl<T> UpperHex for OptionFmt<'_, T>
where T: UpperHex,

1.74.0 ยท Sourceยง

impl<T> UpperHex for Saturating<T>
where T: UpperHex,

1.11.0 ยท Sourceยง

impl<T> UpperHex for Wrapping<T>
where T: UpperHex,

Sourceยง

impl<const V: i8> UpperHex for NonValueI8<V>

Sourceยง

impl<const V: i16> UpperHex for NonValueI16<V>

Sourceยง

impl<const V: i32> UpperHex for NonValueI32<V>

Sourceยง

impl<const V: i64> UpperHex for NonValueI64<V>

Sourceยง

impl<const V: i128> UpperHex for NonValueI128<V>

Sourceยง

impl<const V: isize> UpperHex for NonValueIsize<V>

Sourceยง

impl<const V: u8> UpperHex for NonValueU8<V>

Sourceยง

impl<const V: u16> UpperHex for NonValueU16<V>

Sourceยง

impl<const V: u32> UpperHex for NonValueU32<V>

Sourceยง

impl<const V: u64> UpperHex for NonValueU64<V>

Sourceยง

impl<const V: u128> UpperHex for NonValueU128<V>

Sourceยง

impl<const V: usize> UpperHex for NonValueUsize<V>