Trait comfy_wgpu::smallvec::alloc::fmt::Binary

1.0.0 · source ·
pub trait Binary {
    // Required method
    fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>;
}
Expand description

b formatting.

The Binary trait should format its output as a number in binary.

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

The alternate flag, #, adds a 0b 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 '101010' in binary

assert_eq!(format!("{x:b}"), "101010");
assert_eq!(format!("{x:#b}"), "0b101010");

assert_eq!(format!("{:b}", -16), "11111111111111111111111111110000");

Implementing Binary on a type:

use std::fmt;

struct Length(i32);

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

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

let l = Length(107);

assert_eq!(format!("l as binary is: {l:b}"), "l as binary is: 1101011");

assert_eq!(
    format!("l as binary is: {l:#032b}"),
    "l as binary is: 0b000000000000000000000001101011"
);

Required Methods§

source

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

Formats the value using the given formatter.

Implementors§

source§

impl Binary for i8

source§

impl Binary for i16

source§

impl Binary for i32

source§

impl Binary for i64

source§

impl Binary for i128

source§

impl Binary for isize

source§

impl Binary for u8

source§

impl Binary for u16

source§

impl Binary for u32

source§

impl Binary for u64

source§

impl Binary for u128

source§

impl Binary for usize

1.34.0 · source§

impl Binary for NonZeroI8

1.34.0 · source§

impl Binary for NonZeroI16

1.34.0 · source§

impl Binary for NonZeroI32

1.34.0 · source§

impl Binary for NonZeroI64

1.34.0 · source§

impl Binary for NonZeroI128

1.34.0 · source§

impl Binary for NonZeroIsize

1.28.0 · source§

impl Binary for NonZeroU8

1.28.0 · source§

impl Binary for NonZeroU16

1.28.0 · source§

impl Binary for NonZeroU32

1.28.0 · source§

impl Binary for NonZeroU64

1.28.0 · source§

impl Binary for NonZeroU128

1.28.0 · source§

impl Binary for NonZeroUsize

source§

impl Binary for ModifiersState

source§

impl Binary for WindowButtons

source§

impl Binary for Backends

source§

impl Binary for BufferUsages

source§

impl Binary for ColorWrites

source§

impl Binary for DownlevelFlags

source§

impl Binary for wgpu_types::Features

source§

impl Binary for PipelineStatisticsTypes

source§

impl Binary for wgpu_types::ShaderStages

source§

impl Binary for TextureFormatFeatureFlags

source§

impl Binary for TextureUsages

§

impl Binary for AllocationFlags

§

impl Binary for AttachmentOps

§

impl Binary for Barrier

§

impl Binary for BindGroupLayoutFlags

§

impl Binary for BufferUses

§

impl Binary for Capabilities

§

impl Binary for Channels

§

impl Binary for ControlModes

§

impl Binary for DescriptorPoolCreateFlags

§

impl Binary for DescriptorSetLayoutCreateFlags

§

impl Binary for DupFlags

§

impl Binary for EventMask

§

impl Binary for FPFastMathMode

§

impl Binary for FdFlags

§

impl Binary for Features

§

impl Binary for Flags

§

impl Binary for FormatAspects

§

impl Binary for FragmentShadingRate

§

impl Binary for FunctionControl

§

impl Binary for GlobalUse

§

impl Binary for ImageOperands

§

impl Binary for ImageTypeFlags

§

impl Binary for InputModes

§

impl Binary for InstanceFlags

§

impl Binary for KernelProfilingInfo

§

impl Binary for LocalModes

§

impl Binary for LoopControl

§

impl Binary for MemoryAccess

§

impl Binary for MemoryFlags

§

impl Binary for MemoryPropertyFlags

§

impl Binary for MemorySemantics

§

impl Binary for OutputModes

§

impl Binary for PipelineFlags

§

impl Binary for PipelineLayoutFlags

§

impl Binary for PortCap

§

impl Binary for PortType

§

impl Binary for RayFlag

§

impl Binary for RayFlags

§

impl Binary for ReadWriteFlags

§

impl Binary for Remove

§

impl Binary for SelectionControl

§

impl Binary for ShaderStages

§

impl Binary for StorageAccess

§

impl Binary for TextureFormatCapabilities

§

impl Binary for TextureUses

§

impl Binary for Transformations

§

impl Binary for TypeFlags

§

impl Binary for UniformityRequirements

§

impl Binary for UsageFlags

§

impl Binary for ValidationFlags

§

impl Binary for WatchMask

§

impl Binary for Workarounds

§

impl Binary for WriterFlags

§

impl Binary for WriterFlags

source§

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

§

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

§

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

§

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

source§

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

source§

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

1.74.0-nightly · source§

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

1.11.0 · source§

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

source§

impl<T> Binary for Complex<T>where T: Binary + Num + PartialOrd<T> + Clone,

source§

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