On this page
Trait std::fmt::LowerExp
pub trait LowerExp {
// Required method
fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>;
}
e
formatting.
The LowerExp
trait should format its output in scientific notation with a lower-case e
.
For more information on formatters, see the module-level documentation.
Examples
Basic usage with f64
:
let x = 42.0; // 42.0 is '4.2e1' in scientific notation
assert_eq!(format!("{x:e}"), "4.2e1");
Implementing LowerExp
on a type:
use std::fmt;
struct Length(i32);
impl fmt::LowerExp for Length {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
let val = f64::from(self.0);
fmt::LowerExp::fmt(&val, f) // delegate to f64's implementation
}
}
let l = Length(100);
assert_eq!(
format!("l in scientific notation is: {l:e}"),
"l in scientific notation is: 1e2"
);
assert_eq!(
format!("l in scientific notation is: {l:05e}"),
"l in scientific notation is: 001e2"
);
Required Methods
fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>
Formats the value using the given formatter.
Implementors
impl LowerExp for f32
impl LowerExp for f64
impl LowerExp for i8
impl LowerExp for i16
impl LowerExp for i32
impl LowerExp for i64
impl LowerExp for i128
impl LowerExp for isize
impl LowerExp for u8
impl LowerExp for u16
impl LowerExp for u32
impl LowerExp for u64
impl LowerExp for u128
impl LowerExp for usize
impl<T> LowerExp for &T
where
T: LowerExp + ?Sized,
impl<T> LowerExp for &mut T
where
T: LowerExp + ?Sized,
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/fmt/trait.LowerExp.html