pub struct LocalSimpleFnHandler<F, T, R = HandlerResult<T>>where
T: Serialize,{ /* private fields */ }Expand description
A local handler wrapper for functions that don’t need CommandContext.
This is the simpler variant of LocalFnHandler for handlers that only need
ArgMatches. The context parameter is accepted but ignored internally.
Similar to SimpleFnHandler, but:
- Does NOT require
Send + Sync - Takes
FnMutinstead ofFn(allows mutation)
§Example
use standout_dispatch::{LocalSimpleFnHandler, LocalHandler, CommandContext};
use clap::ArgMatches;
let mut call_count = 0;
let mut handler = LocalSimpleFnHandler::new(|m: &ArgMatches| {
call_count += 1;
Ok::<_, anyhow::Error>(format!("Call #{}", call_count))
});Implementations§
Source§impl<F, T, R> LocalSimpleFnHandler<F, T, R>
impl<F, T, R> LocalSimpleFnHandler<F, T, R>
Trait Implementations§
Source§impl<F, T, R> LocalHandler for LocalSimpleFnHandler<F, T, R>
impl<F, T, R> LocalHandler for LocalSimpleFnHandler<F, T, R>
Source§fn handle(
&mut self,
matches: &ArgMatches,
_ctx: &CommandContext,
) -> HandlerResult<T>
fn handle( &mut self, matches: &ArgMatches, _ctx: &CommandContext, ) -> HandlerResult<T>
Execute the handler with the given matches and context.
Auto Trait Implementations§
impl<F, T, R> Freeze for LocalSimpleFnHandler<F, T, R>where
F: Freeze,
impl<F, T, R> RefUnwindSafe for LocalSimpleFnHandler<F, T, R>where
F: RefUnwindSafe,
impl<F, T, R> Send for LocalSimpleFnHandler<F, T, R>where
F: Send,
impl<F, T, R> Sync for LocalSimpleFnHandler<F, T, R>where
F: Sync,
impl<F, T, R> Unpin for LocalSimpleFnHandler<F, T, R>where
F: Unpin,
impl<F, T, R> UnwindSafe for LocalSimpleFnHandler<F, T, R>where
F: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more