pub struct Method2<R, A0, A1>{ /* private fields */ }Expand description
§Macro Expansion
pub struct MethodN<R, A0, A1, ...>
where
A0: Map,
A1: Map,
...,
{
f: Box<dyn for<'a0, 'a1, ...> Fn(A0::Type<'a0>, A1::Type<'a1>, ...) -> R>,
_types: std::marker::PhantomData<(A0, A1, ...)>,
}Trait Implementations§
Source§impl<R, T0, T1, A0, A1> Dispatch2<R, T0, T1> for Method2<R, A0, A1>where
T0: Map,
T1: Map,
A0: Map,
A1: Map,
for<'a> A0::Type<'a>: DispatchRule<T0::Type<'a>>,
for<'a> A1::Type<'a>: DispatchRule<T1::Type<'a>>,
impl<R, T0, T1, A0, A1> Dispatch2<R, T0, T1> for Method2<R, A0, A1>where
T0: Map,
T1: Map,
A0: Map,
A1: Map,
for<'a> A0::Type<'a>: DispatchRule<T0::Type<'a>>,
for<'a> A1::Type<'a>: DispatchRule<T1::Type<'a>>,
Source§fn try_match(
&self,
x0: &T0::Type<'_>,
x1: &T1::Type<'_>,
) -> [Result<MatchScore, FailureScore>; 2]
fn try_match( &self, x0: &T0::Type<'_>, x1: &T1::Type<'_>, ) -> [Result<MatchScore, FailureScore>; 2]
Invoke
DispatchRule::try_match on each argument/type pair where the type
comes from the backend method. Read moreSource§fn call(&self, x0: T0::Type<'_>, x1: T1::Type<'_>) -> R
fn call(&self, x0: T0::Type<'_>, x1: T1::Type<'_>) -> R
Invoke this method with the given types, invoking
DispatchRule::convert
on each argument to the target types of the backend method. Read moreSource§fn signatures(&self) -> [Signature; 2]
fn signatures(&self) -> [Signature; 2]
Return the signatures for each back-end argument type.
Source§fn try_match_verbose<'a, 'a0, 'a1>(
&self,
x0: &'a T0::Type<'a0>,
x1: &'a T1::Type<'a1>,
) -> [Result<MatchScore, TaggedFailureScore<'a>>; 2]where
'a0: 'a,
'a1: 'a,
fn try_match_verbose<'a, 'a0, 'a1>(
&self,
x0: &'a T0::Type<'a0>,
x1: &'a T1::Type<'a1>,
) -> [Result<MatchScore, TaggedFailureScore<'a>>; 2]where
'a0: 'a,
'a1: 'a,
The equivalent of
Self::try_match, but using the
DispatchRule::try_match_verbose interface. Read moreAuto Trait Implementations§
impl<R, A0, A1> Freeze for Method2<R, A0, A1>
impl<R, A0, A1> !RefUnwindSafe for Method2<R, A0, A1>
impl<R, A0, A1> !Send for Method2<R, A0, A1>
impl<R, A0, A1> !Sync for Method2<R, A0, A1>
impl<R, A0, A1> Unpin for Method2<R, A0, A1>
impl<R, A0, A1> UnsafeUnpin for Method2<R, A0, A1>
impl<R, A0, A1> !UnwindSafe for Method2<R, A0, A1>
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
Source§impl<T> DispatchRule<T> for T
impl<T> DispatchRule<T> for T
Source§type Error = Infallible
type Error = Infallible
Errors that can occur during
convert.Source§fn try_match(_from: &T) -> Result<MatchScore, FailureScore>
fn try_match(_from: &T) -> Result<MatchScore, FailureScore>
Source§fn convert(from: T) -> Result<T, <T as DispatchRule<T>>::Error>
fn convert(from: T) -> Result<T, <T as DispatchRule<T>>::Error>
Perform the actual conversion. Read more
Source§fn description(f: &mut Formatter<'_>, from: Option<&T>) -> Result<(), Error>
fn description(f: &mut Formatter<'_>, from: Option<&T>) -> Result<(), Error>
Write a description of the dispatch rule and outcome to the formatter. Read more
Source§fn try_match_verbose<'a>(
from: &'a From,
) -> Result<MatchScore, TaggedFailureScore<'a>>where
Self: 'a,
fn try_match_verbose<'a>(
from: &'a From,
) -> Result<MatchScore, TaggedFailureScore<'a>>where
Self: 'a,
The equivalent of
try_match but returns a reason for a failed score. Read more