[][src]Struct fn_formats::ComprehensiveFmtSeparate

pub struct ComprehensiveFmtSeparate<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> {
    pub binary: BinaryFmt,
    pub debug: DebugFmt,
    pub display: DisplayFmt,
    pub lower_exp: LowerExpFmt,
    pub lower_hex: LowerHexFmt,
    pub octal: OctalFmt,
    pub pointer: PointerFmt,
    pub upper_exp: UpperExpFmt,
    pub upper_hex: UpperHexFmt,
}

Implements all format traits by calling the respective stored closure.

Example

use fn_formats::ComprehensiveFmtSeparate;

let comprehensive = ComprehensiveFmtSeparate {
    binary: |f| write!(f, "binary"),
    debug: |f| write!(f, "debug"),
    display: |f| write!(f, "display"),
    lower_exp: |f| write!(f, "lower exp"),
    lower_hex: |f| write!(f, "lower hex"),
    octal: |f| write!(f, "octal"),
    pointer: |f| write!(f, "pointer"),
    upper_exp: |f| write!(f, "upper exp"),
    upper_hex: |f| write!(f, "upper hex"),
};

assert_eq!(format!("{:b}", comprehensive), "binary");
assert_eq!(format!("{:?}", comprehensive), "debug");
assert_eq!(format!("{}", comprehensive), "display");
assert_eq!(format!("{:e}", comprehensive), "lower exp");
assert_eq!(format!("{:x}", comprehensive), "lower hex");
assert_eq!(format!("{:o}", comprehensive), "octal");
assert_eq!(format!("{:p}", comprehensive), "pointer");
assert_eq!(format!("{:E}", comprehensive), "upper exp");
assert_eq!(format!("{:X}", comprehensive), "upper hex");

Fields

binary: BinaryFmtdebug: DebugFmtdisplay: DisplayFmtlower_exp: LowerExpFmtlower_hex: LowerHexFmtoctal: OctalFmtpointer: PointerFmtupper_exp: UpperExpFmtupper_hex: UpperHexFmt

Trait Implementations

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> Binary for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Clone + Fn(&mut Formatter<'_>) -> Result, DebugFmt: Clone + Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Clone + Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Clone + Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Clone + Fn(&mut Formatter<'_>) -> Result, OctalFmt: Clone + Fn(&mut Formatter<'_>) -> Result, PointerFmt: Clone + Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Clone + Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Clone + Fn(&mut Formatter<'_>) -> Result> Clone for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Copy + Fn(&mut Formatter<'_>) -> Result, DebugFmt: Copy + Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Copy + Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Copy + Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Copy + Fn(&mut Formatter<'_>) -> Result, OctalFmt: Copy + Fn(&mut Formatter<'_>) -> Result, PointerFmt: Copy + Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Copy + Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Copy + Fn(&mut Formatter<'_>) -> Result> Copy for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> Debug for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Default + Fn(&mut Formatter<'_>) -> Result, DebugFmt: Default + Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Default + Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Default + Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Default + Fn(&mut Formatter<'_>) -> Result, OctalFmt: Default + Fn(&mut Formatter<'_>) -> Result, PointerFmt: Default + Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Default + Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Default + Fn(&mut Formatter<'_>) -> Result> Default for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> Display for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Eq + Fn(&mut Formatter<'_>) -> Result, DebugFmt: Eq + Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Eq + Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Eq + Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Eq + Fn(&mut Formatter<'_>) -> Result, OctalFmt: Eq + Fn(&mut Formatter<'_>) -> Result, PointerFmt: Eq + Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Eq + Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Eq + Fn(&mut Formatter<'_>) -> Result> Eq for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Hash + Fn(&mut Formatter<'_>) -> Result, DebugFmt: Hash + Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Hash + Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Hash + Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Hash + Fn(&mut Formatter<'_>) -> Result, OctalFmt: Hash + Fn(&mut Formatter<'_>) -> Result, PointerFmt: Hash + Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Hash + Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Hash + Fn(&mut Formatter<'_>) -> Result> Hash for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> LowerExp for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> LowerHex for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> Octal for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Ord + Fn(&mut Formatter<'_>) -> Result, DebugFmt: Ord + Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Ord + Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Ord + Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Ord + Fn(&mut Formatter<'_>) -> Result, OctalFmt: Ord + Fn(&mut Formatter<'_>) -> Result, PointerFmt: Ord + Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Ord + Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Ord + Fn(&mut Formatter<'_>) -> Result> Ord for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result, DebugFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result, DisplayFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result, OctalFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result, PointerFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: PartialEq + Fn(&mut Formatter<'_>) -> Result> PartialEq<ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>> for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result, DebugFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result, DisplayFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result, OctalFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result, PointerFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: PartialOrd + Fn(&mut Formatter<'_>) -> Result> PartialOrd<ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>> for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> Pointer for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> StructuralEq for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> StructuralPartialEq for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> UpperExp for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

impl<BinaryFmt: Fn(&mut Formatter<'_>) -> Result, DebugFmt: Fn(&mut Formatter<'_>) -> Result, DisplayFmt: Fn(&mut Formatter<'_>) -> Result, LowerExpFmt: Fn(&mut Formatter<'_>) -> Result, LowerHexFmt: Fn(&mut Formatter<'_>) -> Result, OctalFmt: Fn(&mut Formatter<'_>) -> Result, PointerFmt: Fn(&mut Formatter<'_>) -> Result, UpperExpFmt: Fn(&mut Formatter<'_>) -> Result, UpperHexFmt: Fn(&mut Formatter<'_>) -> Result> UpperHex for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt>[src]

Auto Trait Implementations

impl<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt> Send for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt> where
    BinaryFmt: Send,
    DebugFmt: Send,
    DisplayFmt: Send,
    LowerExpFmt: Send,
    LowerHexFmt: Send,
    OctalFmt: Send,
    PointerFmt: Send,
    UpperExpFmt: Send,
    UpperHexFmt: Send

impl<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt> Sync for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt> where
    BinaryFmt: Sync,
    DebugFmt: Sync,
    DisplayFmt: Sync,
    LowerExpFmt: Sync,
    LowerHexFmt: Sync,
    OctalFmt: Sync,
    PointerFmt: Sync,
    UpperExpFmt: Sync,
    UpperHexFmt: Sync

impl<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt> Unpin for ComprehensiveFmtSeparate<BinaryFmt, DebugFmt, DisplayFmt, LowerExpFmt, LowerHexFmt, OctalFmt, PointerFmt, UpperExpFmt, UpperHexFmt> where
    BinaryFmt: Unpin,
    DebugFmt: Unpin,
    DisplayFmt: Unpin,
    LowerExpFmt: Unpin,
    LowerHexFmt: Unpin,
    OctalFmt: Unpin,
    PointerFmt: Unpin,
    UpperExpFmt: Unpin,
    UpperHexFmt: Unpin

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.