pub trait Octal {
// Required method
fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>;
}Expand description
o formatting.
The Octal trait should format its output as a number in base-8.
For primitive signed integers (i8 to i128, and isize),
negative values are formatted as the two’s complement representation.
The alternate flag, #, adds a 0o 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 '52' in octal
assert_eq!(format!("{x:o}"), "52");
assert_eq!(format!("{x:#o}"), "0o52");
assert_eq!(format!("{:o}", -16), "37777777760");Implementing Octal on a type:
use std::fmt;
struct Length(i32);
impl fmt::Octal for Length {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
let val = self.0;
fmt::Octal::fmt(&val, f) // delegate to i32's implementation
}
}
let l = Length(9);
assert_eq!(format!("l as octal is: {l:o}"), "l as octal is: 11");
assert_eq!(format!("l as octal is: {l:#06o}"), "l as octal is: 0o0011");Required Methods§
1.0.0 · Sourcefn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>
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§
impl Octal for i8
impl Octal for i16
impl Octal for i32
impl Octal for i64
impl Octal for i128
impl Octal for isize
impl Octal for u8
impl Octal for u16
impl Octal for u32
impl Octal for u64
impl Octal for u128
impl Octal for usize
impl Octal for DrawFlags
impl Octal for DrawListFlags
impl Octal for BackendFlags
impl Octal for ButtonFlags
impl Octal for ColorEditFlags
impl Octal for ComboBoxFlags
impl Octal for ConfigFlags
impl Octal for DragDropFlags
impl Octal for FontAtlasFlags
impl Octal for InputTextCallback
impl Octal for InputTextFlags
impl Octal for InputTextMultilineCallback
impl Octal for ItemHoveredFlags
impl Octal for JoystickHats
impl Octal for Modifiers
impl Octal for SelectableFlags
impl Octal for SliderFlags
impl Octal for TabBarFlags
impl Octal for TabItemFlags
impl Octal for TreeNodeFlags
impl Octal for WindowFlags
impl Octal for WindowFocusedFlags
impl Octal for WindowHoveredFlags
impl Octal for bf16
Available on non-
target_arch=spirv only.impl Octal for f16
Available on non-
target_arch=spirv only.