Trait UpperHex

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

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 BytesMut

ยง

impl UpperHex for flams_router_vscode::server_fn::Bytes

Sourceยง

impl UpperHex for AttrCheckFlags

Sourceยง

impl UpperHex for CheckoutNotificationType

Sourceยง

impl UpperHex for CredentialType

Sourceยง

impl UpperHex for DiffFlags

Sourceยง

impl UpperHex for DiffStatsFormat

Sourceยง

impl UpperHex for IndexAddOption

Sourceยง

impl UpperHex for IndexEntryExtendedFlag

Sourceยง

impl UpperHex for IndexEntryFlag

Sourceยง

impl UpperHex for MergeAnalysis

Sourceยง

impl UpperHex for MergePreference

Sourceยง

impl UpperHex for OdbLookupFlags

Sourceยง

impl UpperHex for PathspecFlags

Sourceยง

impl UpperHex for ReferenceFormat

Sourceยง

impl UpperHex for RemoteUpdateFlags

Sourceยง

impl UpperHex for RepositoryInitMode

Sourceยง

impl UpperHex for RepositoryOpenFlags

Sourceยง

impl UpperHex for RevparseMode

Sourceยง

impl UpperHex for Sort

Sourceยง

impl UpperHex for StashApplyFlags

Sourceยง

impl UpperHex for StashFlags

Sourceยง

impl UpperHex for Status

Sourceยง

impl UpperHex for SubmoduleStatus

Sourceยง

impl UpperHex for BigInt

Sourceยง

impl UpperHex for CipherCtxFlags

Sourceยง

impl UpperHex for CMSOptions

Sourceยง

impl UpperHex for OcspFlag

Sourceยง

impl UpperHex for Pkcs7Flags

Sourceยง

impl UpperHex for ExtensionContext

Sourceยง

impl UpperHex for ShutdownState

Sourceยง

impl UpperHex for SslMode

Sourceยง

impl UpperHex for SslOptions

Sourceยง

impl UpperHex for SslSessionCacheMode

Sourceยง

impl UpperHex for SslVerifyMode

Sourceยง

impl UpperHex for X509CheckFlags

Sourceยง

impl UpperHex for X509VerifyFlags

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 Access

ยง

impl UpperHex for Access

ยง

impl UpperHex for AtFlags

ยง

impl UpperHex for AtFlags

ยง

impl UpperHex for Bytes

ยง

impl UpperHex for Bytes

ยง

impl UpperHex for ChannelType

ยง

impl UpperHex for ColorFallbackKind

ยง

impl UpperHex for ColorScheme

ยง

impl UpperHex for CreateFlags

ยง

impl UpperHex for CreateFlags

ยง

impl UpperHex for CreateFlags

ยง

impl UpperHex for DupFlags

ยง

impl UpperHex for DupFlags

ยง

impl UpperHex for ElementSelectorFlags

ยง

impl UpperHex for EventFlags

ยง

impl UpperHex for EventfdFlags

ยง

impl UpperHex for FallocateFlags

ยง

impl UpperHex for FallocateFlags

ยง

impl UpperHex for FdFlags

ยง

impl UpperHex for FdFlags

ยง

impl UpperHex for Features

ยง

impl UpperHex for FloatingPointEmulationControl

ยง

impl UpperHex for FloatingPointExceptionMode

ยง

impl UpperHex for GridAutoFlow

ยง

impl UpperHex for IFlags

ยง

impl UpperHex for IFlags

ยง

impl UpperHex for MemfdFlags

ยง

impl UpperHex for MemfdFlags

ยง

impl UpperHex for Mode

ยง

impl UpperHex for Mode

ยง

impl UpperHex for MountFlags

ยง

impl UpperHex for MountPropagationFlags

ยง

impl UpperHex for OFlags

ยง

impl UpperHex for OFlags

ยง

impl UpperHex for ParserFlags

ยง

impl UpperHex for PidfdFlags

ยง

impl UpperHex for PidfdGetfdFlags

ยง

impl UpperHex for PipeFlags

ยง

impl UpperHex for PollFlags

ยง

impl UpperHex for ReadFlags

ยง

impl UpperHex for ReadFlags

ยง

impl UpperHex for ReadWriteFlags

ยง

impl UpperHex for ReadWriteFlags

ยง

impl UpperHex for RecvFlags

ยง

impl UpperHex for RenameFlags

ยง

impl UpperHex for RenameFlags

ยง

impl UpperHex for ResolveFlags

ยง

impl UpperHex for ResolveFlags

ยง

impl UpperHex for ReturnFlags

ยง

impl UpperHex for SealFlags

ยง

impl UpperHex for SealFlags

ยง

impl UpperHex for SendFlags

ยง

impl UpperHex for SocketAddrXdpFlags

ยง

impl UpperHex for SocketFlags

ยง

impl UpperHex for SpeculationFeatureControl

ยง

impl UpperHex for SpeculationFeatureState

ยง

impl UpperHex for SpliceFlags

ยง

impl UpperHex for StatVfsMountFlags

ยง

impl UpperHex for StatVfsMountFlags

ยง

impl UpperHex for StatxAttributes

ยง

impl UpperHex for StatxFlags

ยง

impl UpperHex for StatxFlags

ยง

impl UpperHex for TextDecorationLine

ยง

impl UpperHex for TextTransformOther

ยง

impl UpperHex for TimerfdFlags

ยง

impl UpperHex for TimerfdTimerFlags

ยง

impl UpperHex for UnalignedAccessControl

ยง

impl UpperHex for UnmountFlags

ยง

impl UpperHex for VendorPrefix

ยง

impl UpperHex for WaitIdOptions

ยง

impl UpperHex for WaitOptions

ยง

impl UpperHex for WatchFlags

ยง

impl UpperHex for WatchFlags

ยง

impl UpperHex for XattrFlags

ยง

impl UpperHex for XattrFlags

ยง

impl UpperHex for XdpDescOptions

ยง

impl UpperHex for XdpOptionsFlags

ยง

impl UpperHex for XdpRingFlags

ยง

impl UpperHex for XdpUmemRegFlags

Sourceยง

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

ยง

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

Sourceยง

impl<C, T> UpperHex for Alpha<C, T>
where T: UpperHex, C: UpperHex,

ยง

impl<O> UpperHex for I16<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for I32<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for I64<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for I128<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for Isize<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for U16<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for U32<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for U64<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for U128<O>
where O: ByteOrder,

ยง

impl<O> UpperHex for Usize<O>
where O: ByteOrder,

Sourceยง

impl<S, T> UpperHex for Luma<S, T>
where T: UpperHex,

Sourceยง

impl<S, T> UpperHex for Rgb<S, T>
where T: UpperHex,

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,

1.28.0 ยท Sourceยง

impl<T> UpperHex for NonZero<T>

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,

ยง

impl<T> UpperHex for GenericArray<u8, T>
where T: ArrayLength<u8> + Add, <T as Add>::Output: ArrayLength<u8>,

ยง

impl<const MIN: i8, const MAX: i8> UpperHex for RangedI8<MIN, MAX>

ยง

impl<const MIN: i16, const MAX: i16> UpperHex for RangedI16<MIN, MAX>

ยง

impl<const MIN: i32, const MAX: i32> UpperHex for RangedI32<MIN, MAX>

ยง

impl<const MIN: i64, const MAX: i64> UpperHex for RangedI64<MIN, MAX>

ยง

impl<const MIN: i128, const MAX: i128> UpperHex for RangedI128<MIN, MAX>

ยง

impl<const MIN: isize, const MAX: isize> UpperHex for RangedIsize<MIN, MAX>

ยง

impl<const MIN: u8, const MAX: u8> UpperHex for RangedU8<MIN, MAX>

ยง

impl<const MIN: u16, const MAX: u16> UpperHex for RangedU16<MIN, MAX>

ยง

impl<const MIN: u32, const MAX: u32> UpperHex for RangedU32<MIN, MAX>

ยง

impl<const MIN: u64, const MAX: u64> UpperHex for RangedU64<MIN, MAX>

ยง

impl<const MIN: u128, const MAX: u128> UpperHex for RangedU128<MIN, MAX>

ยง

impl<const MIN: usize, const MAX: usize> UpperHex for RangedUsize<MIN, MAX>