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.
§ExamplesBasic usage with i32
:
let x = 42; 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) }
}
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:#034b}"),
"l as binary is: 0b00000000000000000000000001101011"
);
1.0.0 · Source
Formats the value using the given formatter.
§ErrorsThis 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.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4