Skip to main content

LowerExp

Trait LowerExp 

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

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§

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.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl LowerExp for bf16

Available on non-SPIR-V only.
1.0.0 · Source§

impl LowerExp for f16

Source§

impl LowerExp for f16

Available on non-SPIR-V only.
1.0.0 · Source§

impl LowerExp for f32

1.0.0 · Source§

impl LowerExp for f64

Source§

impl LowerExp for f32x4

Source§

impl LowerExp for f32x8

Source§

impl LowerExp for f64x2

Source§

impl LowerExp for f64x4

1.42.0 · Source§

impl LowerExp for i8

Source§

impl LowerExp for i8x16

Source§

impl LowerExp for i8x32

1.42.0 · Source§

impl LowerExp for i16

1.42.0 · Source§

impl LowerExp for i32

1.42.0 · Source§

impl LowerExp for i64

Source§

impl LowerExp for i16x8

Source§

impl LowerExp for i16x16

Source§

impl LowerExp for i32x4

Source§

impl LowerExp for i32x8

Source§

impl LowerExp for i64x2

Source§

impl LowerExp for i64x4

1.42.0 · Source§

impl LowerExp for i128

1.42.0 · Source§

impl LowerExp for isize

Source§

impl LowerExp for m128

Source§

impl LowerExp for m256

Source§

impl LowerExp for m128d

Source§

impl LowerExp for m128i

Source§

impl LowerExp for m256d

Source§

impl LowerExp for m256i

1.42.0 · Source§

impl LowerExp for u8

Source§

impl LowerExp for u8x16

Source§

impl LowerExp for u8x32

1.42.0 · Source§

impl LowerExp for u16

1.42.0 · Source§

impl LowerExp for u32

1.42.0 · Source§

impl LowerExp for u64

Source§

impl LowerExp for u16x8

Source§

impl LowerExp for u16x16

Source§

impl LowerExp for u32x4

Source§

impl LowerExp for u32x8

Source§

impl LowerExp for u64x2

Source§

impl LowerExp for u64x4

1.42.0 · Source§

impl LowerExp for u128

1.42.0 · Source§

impl LowerExp for usize

Source§

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

Source§

impl<D> LowerExp for StyledObject<D>
where D: LowerExp,

Source§

impl<L, R> LowerExp for Either<L, R>
where L: LowerExp, R: LowerExp,

Source§

impl<T, R, C, S> LowerExp for Matrix<T, R, C, S>
where R: Dim, C: Dim, T: Scalar + LowerExp, S: RawStorage<T, R, C>,

1.0.0 · Source§

impl<T> LowerExp for &T
where T: LowerExp + ?Sized,

1.0.0 · Source§

impl<T> LowerExp for &mut T
where T: LowerExp + ?Sized,

Source§

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

Source§

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

1.84.0 · Source§

impl<T> LowerExp for NonZero<T>

Source§

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