Struct zero_copy_pads::ExcessHandlingFunction [−][src]
pub struct ExcessHandlingFunction<Value, PadBlock = char>(pub fn(_: Excess<'_, Value, PadBlock>, _: &mut Formatter<'_>) -> Result<(), Error>)
where
Value: Width,
PadBlock: Display;
Turn a function (without closure) into a ExcessHandler
.
Example: Truncate to make it fit
use zero_copy_pads::{ExcessHandlingFunction, Excess, PaddedValue, AlignRight}; use std::fmt::{Formatter, Result}; let truncate = ExcessHandlingFunction::<&str>(|excess, formatter| { let mut value = excess.value.to_string(); value.truncate(excess.total_width); write!(formatter, "{}", value) }); let padded_value = PaddedValue { handle_excess: truncate, value: "abcdefghi", total_width: 4, pad_block: ' ', pad: AlignRight, }; assert_eq!(padded_value.to_string(), "abcd");
Trait Implementations
impl<Value, PadBlock> AsMut<fn(Excess<'_, Value, PadBlock>, &mut Formatter<'_>) -> Result<(), Error>> for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
fn as_mut(
&mut self
) -> &mut fn(_: Excess<'_, Value, PadBlock>, _: &mut Formatter<'_>) -> Result<(), Error>
[src]
&mut self
) -> &mut fn(_: Excess<'_, Value, PadBlock>, _: &mut Formatter<'_>) -> Result<(), Error>
impl<Value, PadBlock> AsRef<fn(Excess<'_, Value, PadBlock>, &mut Formatter<'_>) -> Result<(), Error>> for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
fn as_ref(
&self
) -> &fn(_: Excess<'_, Value, PadBlock>, _: &mut Formatter<'_>) -> Result<(), Error>
[src]
&self
) -> &fn(_: Excess<'_, Value, PadBlock>, _: &mut Formatter<'_>) -> Result<(), Error>
impl<Value: Clone, PadBlock: Clone> Clone for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
fn clone(&self) -> ExcessHandlingFunction<Value, PadBlock>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<Value: Copy, PadBlock: Copy> Copy for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
impl<Value, PadBlock> Deref for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
type Target = fn(_: Excess<'_, Value, PadBlock>, _: &mut Formatter<'_>) -> Result<(), Error>
The resulting type after dereferencing.
fn deref(&self) -> &Self::Target
[src]
impl<Value, PadBlock> DerefMut for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
impl<Value, PadBlock> ExcessHandler<Value, PadBlock> for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
fn handle_excess(
&self,
excess: Excess<'_, Value, PadBlock>,
formatter: &mut Formatter<'_>
) -> Result<(), Error>
[src]
&self,
excess: Excess<'_, Value, PadBlock>,
formatter: &mut Formatter<'_>
) -> Result<(), Error>
impl<Value, PadBlock> From<ErrorOnExcess> for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
fn from(_: ErrorOnExcess) -> Self
[src]
impl<Value, PadBlock> From<IgnoreExcess> for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
fn from(_: IgnoreExcess) -> Self
[src]
impl<Value, PadBlock> From<PanicOnExcess> for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
fn from(_: PanicOnExcess) -> Self
[src]
impl<Value, PadBlock> From<fn(Excess<'_, Value, PadBlock>, &mut Formatter<'_>) -> Result<(), Error>> for ExcessHandlingFunction<Value, PadBlock> where
Value: Width,
PadBlock: Display,
[src]
Value: Width,
PadBlock: Display,
Auto Trait Implementations
impl<Value, PadBlock> RefUnwindSafe for ExcessHandlingFunction<Value, PadBlock>
impl<Value, PadBlock> Send for ExcessHandlingFunction<Value, PadBlock>
impl<Value, PadBlock> Sync for ExcessHandlingFunction<Value, PadBlock>
impl<Value, PadBlock> Unpin for ExcessHandlingFunction<Value, PadBlock>
impl<Value, PadBlock> UnwindSafe for ExcessHandlingFunction<Value, PadBlock>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<X> Pipe for X
pub fn pipe<Return, Function>(self, f: Function) -> Return where
Function: FnOnce(Self) -> Return,
Function: FnOnce(Self) -> Return,
pub fn pipe_ref<'a, Return, Function>(&'a self, f: Function) -> Return where
Function: FnOnce(&'a Self) -> Return,
Function: FnOnce(&'a Self) -> Return,
pub fn pipe_mut<'a, Return, Function>(&'a mut self, f: Function) -> Return where
Function: FnOnce(&'a mut Self) -> Return,
Function: FnOnce(&'a mut Self) -> Return,
pub fn pipe_as_ref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: AsRef<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
Self: AsRef<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
pub fn pipe_as_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: AsMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
&'a mut self,
f: Function
) -> Return where
Self: AsMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
pub fn pipe_deref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: Deref<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
Self: Deref<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
pub fn pipe_deref_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: DerefMut<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
&'a mut self,
f: Function
) -> Return where
Self: DerefMut<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
pub fn pipe_borrow<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: Borrow<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
Self: Borrow<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
pub fn pipe_borrow_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: BorrowMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
&'a mut self,
f: Function
) -> Return where
Self: BorrowMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,