Trait UpperHex

1.36.0 · Source
pub trait UpperHex {
    // Required method
    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>;
}
Available on crate feature wayland and Linux only.
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 cosmic::iced::clipboard::dnd::DndAction

§

impl UpperHex for cosmic::iced::daemon::program::graphics::core::Bytes

§

impl UpperHex for cosmic::iced::daemon::program::graphics::text::cosmic_text::harfrust::BufferFlags

§

impl UpperHex for cosmic::iced::daemon::program::graphics::text::cosmic_text::harfrust::SerializeFlags

§

impl UpperHex for BitmapFlags

§

impl UpperHex for PaletteType

§

impl UpperHex for PermissionFlags

§

impl UpperHex for GaspRangeBehavior

§

impl UpperHex for CompositeGlyphFlags

§

impl UpperHex for SimpleGlyphFlags

§

impl UpperHex for ValueFormat

§

impl UpperHex for GvarFlags

§

impl UpperHex for cosmic::iced::daemon::program::graphics::text::cosmic_text::skrifa::raw::tables::head::Flags

§

impl UpperHex for MacStyle

§

impl UpperHex for SelectionFlags

§

impl UpperHex for HeaderFlags

§

impl UpperHex for AxisValueTableFlags

§

impl UpperHex for VarcFlags

§

impl UpperHex for EntryFormat

§

impl UpperHex for CacheKeyFlags

§

impl UpperHex for cosmic::iced::keyboard::Modifiers

Source§

impl UpperHex for cosmic::cctk::cosmic_protocols::workspace::v2::client::zcosmic_workspace_handle_v2::State

Source§

impl UpperHex for cosmic::cctk::cosmic_protocols::workspace::v2::client::zcosmic_workspace_handle_v2::WorkspaceCapabilities

Source§

impl UpperHex for cosmic::cctk::cosmic_protocols::workspace::v2::server::zcosmic_workspace_handle_v2::State

Source§

impl UpperHex for cosmic::cctk::cosmic_protocols::workspace::v2::server::zcosmic_workspace_handle_v2::WorkspaceCapabilities

§

impl UpperHex for cosmic::cctk::screencopy::CaptureOptions

§

impl UpperHex for cosmic::cctk::sctk::shell::wlr_layer::Anchor

§

impl UpperHex for WindowManagerCapabilities

§

impl UpperHex for WindowState

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::background_effect::v1::client::ext_background_effect_manager_v1::Capability

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::background_effect::v1::server::ext_background_effect_manager_v1::Capability

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::image_copy_capture::v1::server::ext_image_copy_capture_manager_v1::Options

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::workspace::v1::client::ext_workspace_group_handle_v1::GroupCapabilities

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::workspace::v1::client::ext_workspace_handle_v1::State

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::workspace::v1::client::ext_workspace_handle_v1::WorkspaceCapabilities

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::workspace::v1::server::ext_workspace_group_handle_v1::GroupCapabilities

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::workspace::v1::server::ext_workspace_handle_v1::State

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::ext::workspace::v1::server::ext_workspace_handle_v1::WorkspaceCapabilities

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::linux_dmabuf::zv1::client::zwp_linux_buffer_params_v1::Flags

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::linux_dmabuf::zv1::client::zwp_linux_dmabuf_feedback_v1::TrancheFlags

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::linux_dmabuf::zv1::server::zwp_linux_buffer_params_v1::Flags

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::linux_dmabuf::zv1::server::zwp_linux_dmabuf_feedback_v1::TrancheFlags

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::presentation_time::client::wp_presentation_feedback::Kind

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::presentation_time::server::wp_presentation_feedback::Kind

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::text_input::zv1::client::zwp_text_input_v1::ContentHint

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::text_input::zv1::server::zwp_text_input_v1::ContentHint

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::text_input::zv3::client::zwp_text_input_v3::ContentHint

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::wp::text_input::zv3::server::zwp_text_input_v3::ContentHint

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::xdg::shell::client::xdg_positioner::ConstraintAdjustment

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols::xdg::shell::server::xdg_positioner::ConstraintAdjustment

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols_experimental::input_method::v1::client::xx_input_popup_positioner_v1::ConstraintAdjustment

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols_wlr::layer_shell::v1::client::zwlr_layer_surface_v1::Anchor

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols_wlr::layer_shell::v1::server::zwlr_layer_surface_v1::Anchor

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols_wlr::screencopy::v1::client::zwlr_screencopy_frame_v1::Flags

§

impl UpperHex for cosmic::cctk::sctk::reexports::protocols_wlr::screencopy::v1::server::zwlr_screencopy_frame_v1::Flags

§

impl UpperHex for cosmic::cctk::sctk::reexports::client::protocol::wl_data_device_manager::DndAction

§

impl UpperHex for cosmic::cctk::sctk::reexports::client::protocol::wl_output::Mode

§

impl UpperHex for cosmic::cctk::sctk::reexports::client::protocol::wl_seat::Capability

§

impl UpperHex for cosmic::cctk::sctk::reexports::client::protocol::wl_shell_surface::Resize

§

impl UpperHex for cosmic::cctk::sctk::reexports::client::protocol::wl_shell_surface::Transient

Source§

impl UpperHex for bf16

Source§

impl UpperHex for f16

Source§

impl UpperHex for ron::extensions::Extensions

Source§

impl UpperHex for ron::extensions::Extensions

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 AtomicCommitFlags

§

impl UpperHex for BufferFlags

§

impl UpperHex for Bytes

§

impl UpperHex for BytesMut

§

impl UpperHex for CapabilitiesSecureBits

§

impl UpperHex for Capability

§

impl UpperHex for Capability

§

impl UpperHex for Capability

§

impl UpperHex for CapabilitySet

§

impl UpperHex for ContentHint

§

impl UpperHex for CreateFlags

§

impl UpperHex for CreateFlags

§

impl UpperHex for CreateFlags

§

impl UpperHex for DndAction

§

impl UpperHex for DupFlags

§

impl UpperHex for DupFlags

§

impl UpperHex for EventFlags

§

impl UpperHex for EventKindMask

§

impl UpperHex for EventMask

§

impl UpperHex for EventfdFlags

§

impl UpperHex for FallocateFlags

§

impl UpperHex for FallocateFlags

§

impl UpperHex for FbCmd2Flags

§

impl UpperHex for FdFlags

§

impl UpperHex for FdFlags

§

impl UpperHex for Flags

§

impl UpperHex for FloatingPointEmulationControl

§

impl UpperHex for FloatingPointExceptionMode

§

impl UpperHex for Gid

§

impl UpperHex for IFlags

§

impl UpperHex for IFlags

§

impl UpperHex for ImeHint

§

impl UpperHex for MapFlags

§

impl UpperHex for MembarrierQuery

§

impl UpperHex for MemfdFlags

§

impl UpperHex for MemfdFlags

§

impl UpperHex for MlockAllFlags

§

impl UpperHex for MlockFlags

§

impl UpperHex for Mode

§

impl UpperHex for Mode

§

impl UpperHex for Mode

§

impl UpperHex for ModeFlags

§

impl UpperHex for ModePropFlags

§

impl UpperHex for ModeTypeFlags

§

impl UpperHex for Modifiers

§

impl UpperHex for Modifiers

§

impl UpperHex for ModifiersKeys

§

impl UpperHex for ModifiersState

§

impl UpperHex for MountFlags

§

impl UpperHex for MountPropagationFlags

§

impl UpperHex for MprotectFlags

§

impl UpperHex for MremapFlags

§

impl UpperHex for MsyncFlags

§

impl UpperHex for OFlags

§

impl UpperHex for OFlags

§

impl UpperHex for PageFlipFlags

§

impl UpperHex for Pid

§

impl UpperHex for PidfdFlags

§

impl UpperHex for PidfdGetfdFlags

§

impl UpperHex for PipeFlags

§

impl UpperHex for PollFlags

§

impl UpperHex for ProtFlags

§

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 Resize

§

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 SerializeFlags

§

impl UpperHex for ShmOFlags

§

impl UpperHex for ShmOFlags

§

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 TaggedAddressMode

§

impl UpperHex for ThreadNameSpaceType

§

impl UpperHex for TimerfdFlags

§

impl UpperHex for TimerfdTimerFlags

§

impl UpperHex for Transformations

§

impl UpperHex for Transformations

§

impl UpperHex for Transient

§

impl UpperHex for TxTimeFlags

§

impl UpperHex for Uid

§

impl UpperHex for UnalignedAccessControl

§

impl UpperHex for UnmountFlags

§

impl UpperHex for UnshareFlags

§

impl UpperHex for UserfaultfdFlags

§

impl UpperHex for VblankWaitFlags

§

impl UpperHex for WaitFlags

§

impl UpperHex for WaitIdOptions

§

impl UpperHex for WaitOptions

§

impl UpperHex for WaitvFlags

§

impl UpperHex for WatchFlags

§

impl UpperHex for WatchFlags

§

impl UpperHex for WatchMask

§

impl UpperHex for WindowButtons

§

impl UpperHex for XattrFlags

§

impl UpperHex for XattrFlags

§

impl UpperHex for XdpDescOptions

§

impl UpperHex for XdpOptionsFlags

§

impl UpperHex for XdpRingFlags

§

impl UpperHex for XdpUmemRegFlags

§

impl UpperHex for xkb_state_component

§

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,

§

impl<A> UpperHex for TinyVec<A>
where A: Array, <A as Array>::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 cosmic::cosmic_theme::palette::rgb::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 Bgr<T>
where T: UpperHex,

§

impl<T> UpperHex for BitFlags<T>
where T: BitFlag, <T as RawBitFlags>::Numeric: UpperHex,

§

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

§

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