Trait ReflectFn

Source
pub trait ReflectFn<'env, Marker>: ReflectFnMut<'env, Marker> {
    // Required method
    fn reflect_call<'a>(
        &self,
        args: ArgList<'a>,
    ) -> Result<Return<'a>, FunctionError>;
}
Expand description

A reflection-based version of the Fn trait.

This allows functions to be called dynamically through reflection.

§Blanket Implementation

This trait has a blanket implementation that covers:

  • Functions and methods defined with the fn keyword
  • Anonymous functions
  • Function pointers
  • Closures that capture immutable references to their environment
  • Closures that take ownership of captured variables

For each of the above cases, the function signature may only have up to 15 arguments, not including an optional receiver argument (often &self or &mut self). This optional receiver argument may be either a mutable or immutable reference to a type. If the return type is also a reference, its lifetime will be bound to the lifetime of this receiver.

See the module-level documentation for more information on valid signatures.

To handle functions that capture mutable references to their environment, see the ReflectFnMut trait instead.

Arguments are expected to implement FromArg, and the return type is expected to implement IntoReturn. Both of these traits are automatically implemented when using the Reflect derive macro.

§Example

fn add(a: i32, b: i32) -> i32 {
  a + b
}

let args = ArgList::new().with_owned(25_i32).with_owned(75_i32);

let value = add.reflect_call(args).unwrap().unwrap_owned();
assert_eq!(value.try_take::<i32>().unwrap(), 100);

§Trait Parameters

This trait has a Marker type parameter that is used to get around issues with unconstrained type parameters when defining impls with generic arguments or return types. This Marker can be any type, provided it doesn’t conflict with other implementations.

Additionally, it has a lifetime parameter, 'env, that is used to bound the lifetime of the function. For named functions and some closures, this will end up just being 'static, however, closures that borrow from their environment will have a lifetime bound to that environment.

Required Methods§

Source

fn reflect_call<'a>( &self, args: ArgList<'a>, ) -> Result<Return<'a>, FunctionError>

Call the function with the given arguments and return the result.

Implementors§

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, Arg13: FromArg, Arg14: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>, <Arg13 as FromArg>::This<'a>, <Arg14 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, Arg13: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>, <Arg13 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4, Arg5) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, Arg4, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3, Arg4) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3, Arg4) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, Arg3, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2, Arg3) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2, Arg3) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, Arg2, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1, Arg2) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1, Arg2) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, Arg1, ReturnType, Function> ReflectFn<'env, fn(Arg0, Arg1) -> [ReturnType]> for Function
where Arg0: FromArg, Arg1: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0, Arg1) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>),

Source§

impl<'env, Arg0, ReturnType, Function> ReflectFn<'env, fn(Arg0) -> [ReturnType]> for Function
where Arg0: FromArg, ReturnType: IntoReturn + Reflect, Function: Fn(Arg0) -> ReturnType + 'env + for<'a> Fn(<Arg0 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, Arg13: FromArg, Arg14: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>, <Arg13 as FromArg>::This<'a>, <Arg14 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, Arg13: FromArg, Arg14: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>, <Arg13 as FromArg>::This<'a>, <Arg14 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, Arg13: FromArg, Arg14: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>, <Arg13 as FromArg>::This<'a>, <Arg14 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, Arg13: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>, <Arg13 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, Arg13: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>, <Arg13 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, Arg13: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>, <Arg13 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, Arg12: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>, <Arg12 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, Arg11: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>, <Arg11 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, Arg10: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>, <Arg10 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, Arg9: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>, <Arg9 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, Arg8: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>, <Arg8 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, Arg7: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>, <Arg7 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, Arg6: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>, <Arg6 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, Arg5: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, Arg5) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>, <Arg5 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3, Arg4) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3, Arg4) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, Arg4, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, Arg4: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3, Arg4) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>, <Arg4 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2, Arg3) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2, Arg3) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, Arg3, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2, Arg3) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, Arg3: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2, Arg3) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>, <Arg3 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1, Arg2) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1, Arg2) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, Arg2, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1, Arg2) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, Arg2: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1, Arg2) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>, <Arg2 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0, Arg1) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0, Arg1) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, Arg1, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0, Arg1) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, Arg1: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0, Arg1) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>, <Arg1 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, ReturnType, Function> ReflectFn<'env, fn(&Receiver, Arg0) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver, Arg0) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver, <Arg0 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, Arg0, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver, Arg0) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, Arg0: FromArg, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver, Arg0) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver, <Arg0 as FromArg>::This<'a>),

Source§

impl<'env, Receiver, ReturnType, Function> ReflectFn<'env, fn(&Receiver) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a Receiver) -> &'a ReturnType + 'env + for<'a> Fn(&'a Receiver),

Source§

impl<'env, Receiver, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver) -> &ReturnType> for Function
where Receiver: Reflect + TypePath, ReturnType: Reflect, &'a ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver) -> &'a ReturnType + 'env + for<'a> Fn(&'a mut Receiver),

Source§

impl<'env, Receiver, ReturnType, Function> ReflectFn<'env, fn(&mut Receiver) -> &mut ReturnType> for Function
where Receiver: Reflect + TypePath, ReturnType: Reflect, &'a mut ReturnType: for<'a> IntoReturn, Function: for<'a> Fn(&'a mut Receiver) -> &'a mut ReturnType + 'env + for<'a> Fn(&'a mut Receiver),

Source§

impl<'env, ReturnType, Function> ReflectFn<'env, fn() -> [ReturnType]> for Function
where ReturnType: IntoReturn + Reflect, Function: Fn() -> ReturnType + 'env + for<'a> Fn(),