Trait tract_pulse::internal::fmt::UpperExp
1.0.0 · source · pub trait UpperExp {
// Required method
fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>;
}
Expand description
E
formatting.
The UpperExp
trait should format its output in scientific notation with an upper-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 UpperExp
on a type:
use std::fmt;
struct Length(i32);
impl fmt::UpperExp for Length {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
let val = f64::from(self.0);
fmt::UpperExp::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§
Implementors§
impl UpperExp for f32
impl UpperExp for f64
impl UpperExp for i8
impl UpperExp for i16
impl UpperExp for i32
impl UpperExp for i64
impl UpperExp for i128
impl UpperExp for isize
impl UpperExp for u8
impl UpperExp for u16
impl UpperExp for u32
impl UpperExp for u64
impl UpperExp for u128
impl UpperExp for usize
impl UpperExp for f16
impl UpperExp for bf16
impl<'a, I> UpperExp for Format<'a, I>where I: Iterator, <I as Iterator>::Item: UpperExp,
impl<A, S, D> UpperExp for ArrayBase<S, D>where A: UpperExp, D: Dimension, S: Data<Elem = A>,
Format the array using UpperExp
and apply the formatting parameters used
to each element.
The array is shown in multiline style.