Trait comfy_wgpu::smallvec::alloc::fmt::UpperHex

1.0.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 x = 42; // 42 is '2A' in hex

assert_eq!(format!("{x:X}"), "2A");
assert_eq!(format!("{x:#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§

source

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

Formats the value using the given formatter.

Implementors§

source§

impl UpperHex for i8

source§

impl UpperHex for i16

source§

impl UpperHex for i32

source§

impl UpperHex for i64

source§

impl UpperHex for i128

source§

impl UpperHex for isize

source§

impl UpperHex for u8

source§

impl UpperHex for u16

source§

impl UpperHex for u32

source§

impl UpperHex for u64

source§

impl UpperHex for u128

source§

impl UpperHex for usize

1.34.0 · source§

impl UpperHex for NonZeroI8

1.34.0 · source§

impl UpperHex for NonZeroI16

1.34.0 · source§

impl UpperHex for NonZeroI32

1.34.0 · source§

impl UpperHex for NonZeroI64

1.34.0 · source§

impl UpperHex for NonZeroI128

1.34.0 · source§

impl UpperHex for NonZeroIsize

1.28.0 · source§

impl UpperHex for NonZeroU8

1.28.0 · source§

impl UpperHex for NonZeroU16

1.28.0 · source§

impl UpperHex for NonZeroU32

1.28.0 · source§

impl UpperHex for NonZeroU64

1.28.0 · source§

impl UpperHex for NonZeroU128

1.28.0 · source§

impl UpperHex for NonZeroUsize

source§

impl UpperHex for ModifiersState

source§

impl UpperHex for WindowButtons

source§

impl UpperHex for Backends

source§

impl UpperHex for BufferUsages

source§

impl UpperHex for ColorWrites

source§

impl UpperHex for DownlevelFlags

source§

impl UpperHex for wgpu_types::Features

source§

impl UpperHex for PipelineStatisticsTypes

source§

impl UpperHex for wgpu_types::ShaderStages

source§

impl UpperHex for TextureFormatFeatureFlags

source§

impl UpperHex for TextureUsages

§

impl UpperHex for AllocationFlags

§

impl UpperHex for AttachmentOps

§

impl UpperHex for Barrier

§

impl UpperHex for BindGroupLayoutFlags

§

impl UpperHex for BufferUses

§

impl UpperHex for Capabilities

§

impl UpperHex for Channels

§

impl UpperHex for ControlModes

§

impl UpperHex for DescriptorPoolCreateFlags

§

impl UpperHex for DescriptorSetLayoutCreateFlags

§

impl UpperHex for DupFlags

§

impl UpperHex for EventMask

§

impl UpperHex for FPFastMathMode

§

impl UpperHex for FdFlags

§

impl UpperHex for Features

§

impl UpperHex for Flags

§

impl UpperHex for FormatAspects

§

impl UpperHex for FragmentShadingRate

§

impl UpperHex for FunctionControl

§

impl UpperHex for GlobalUse

§

impl UpperHex for ImageOperands

§

impl UpperHex for ImageTypeFlags

§

impl UpperHex for InputModes

§

impl UpperHex for InstanceFlags

§

impl UpperHex for KernelProfilingInfo

§

impl UpperHex for LocalModes

§

impl UpperHex for LoopControl

§

impl UpperHex for MemoryAccess

§

impl UpperHex for MemoryFlags

§

impl UpperHex for MemoryPropertyFlags

§

impl UpperHex for MemorySemantics

§

impl UpperHex for OutputModes

§

impl UpperHex for PipelineFlags

§

impl UpperHex for PipelineLayoutFlags

§

impl UpperHex for PortCap

§

impl UpperHex for PortType

§

impl UpperHex for RayFlag

§

impl UpperHex for RayFlags

§

impl UpperHex for ReadWriteFlags

§

impl UpperHex for Remove

§

impl UpperHex for SelectionControl

§

impl UpperHex for ShaderStages

§

impl UpperHex for StorageAccess

§

impl UpperHex for TextureFormatCapabilities

§

impl UpperHex for TextureUses

§

impl UpperHex for Transformations

§

impl UpperHex for TypeFlags

§

impl UpperHex for UniformityRequirements

§

impl UpperHex for UsageFlags

§

impl UpperHex for ValidationFlags

§

impl UpperHex for WatchMask

§

impl UpperHex for Workarounds

§

impl UpperHex for WriterFlags

§

impl UpperHex for WriterFlags

source§

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

§

impl<'a, T> UpperHex for StyledValue<'a, T>where T: UpperHex,

§

impl<'s, T> UpperHex for SliceVec<'s, T>where T: UpperHex,

§

impl<A> UpperHex for ArrayVec<A>where A: Array, <A as Array>::Item: UpperHex,

source§

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

source§

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

1.74.0-nightly · 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<T> UpperHex for Complex<T>where T: UpperHex + Num + PartialOrd<T> + Clone,

source§

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