Trait SystemParamFunction

Source
pub trait SystemParamFunction<In, Out, Params: SystemParam>:
    Send
    + Sync
    + 'static {
    // Required method
    fn run(&mut self, input: In, item: SystemParamItem<'_, '_, Params>) -> Out;
}

Required Methods§

Source

fn run(&mut self, input: In, item: SystemParamItem<'_, '_, Params>) -> Out

Implementors§

Source§

impl<Out, Func> SystemParamFunction<(), Out, ()> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut() -> Out,

Source§

impl<Out, Func, A: SystemParam, B: SystemParam, C: SystemParam, D: SystemParam, E: SystemParam, F: SystemParam, G: SystemParam, H: SystemParam, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (A, B, C, D, E, F, G, H, I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(A, B, C, D, E, F, G, H, I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, A>, SystemParamItem<'_, '_, B>, SystemParamItem<'_, '_, C>, SystemParamItem<'_, '_, D>, SystemParamItem<'_, '_, E>, SystemParamItem<'_, '_, F>, SystemParamItem<'_, '_, G>, SystemParamItem<'_, '_, H>, SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, B: SystemParam, C: SystemParam, D: SystemParam, E: SystemParam, F: SystemParam, G: SystemParam, H: SystemParam, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (B, C, D, E, F, G, H, I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(B, C, D, E, F, G, H, I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, B>, SystemParamItem<'_, '_, C>, SystemParamItem<'_, '_, D>, SystemParamItem<'_, '_, E>, SystemParamItem<'_, '_, F>, SystemParamItem<'_, '_, G>, SystemParamItem<'_, '_, H>, SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, C: SystemParam, D: SystemParam, E: SystemParam, F: SystemParam, G: SystemParam, H: SystemParam, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (C, D, E, F, G, H, I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(C, D, E, F, G, H, I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, C>, SystemParamItem<'_, '_, D>, SystemParamItem<'_, '_, E>, SystemParamItem<'_, '_, F>, SystemParamItem<'_, '_, G>, SystemParamItem<'_, '_, H>, SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, D: SystemParam, E: SystemParam, F: SystemParam, G: SystemParam, H: SystemParam, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (D, E, F, G, H, I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(D, E, F, G, H, I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, D>, SystemParamItem<'_, '_, E>, SystemParamItem<'_, '_, F>, SystemParamItem<'_, '_, G>, SystemParamItem<'_, '_, H>, SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, E: SystemParam, F: SystemParam, G: SystemParam, H: SystemParam, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (E, F, G, H, I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(E, F, G, H, I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, E>, SystemParamItem<'_, '_, F>, SystemParamItem<'_, '_, G>, SystemParamItem<'_, '_, H>, SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, F: SystemParam, G: SystemParam, H: SystemParam, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (F, G, H, I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(F, G, H, I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, F>, SystemParamItem<'_, '_, G>, SystemParamItem<'_, '_, H>, SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, G: SystemParam, H: SystemParam, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (G, H, I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(G, H, I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, G>, SystemParamItem<'_, '_, H>, SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, H: SystemParam, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (H, I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(H, I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, H>, SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, I: SystemParam, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (I, J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(I, J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, I>, SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, J: SystemParam, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (J, K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(J, K, L) -> Out + FnMut(SystemParamItem<'_, '_, J>, SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, K: SystemParam, L: SystemParam> SystemParamFunction<(), Out, (K, L)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(K, L) -> Out + FnMut(SystemParamItem<'_, '_, K>, SystemParamItem<'_, '_, L>) -> Out,

Source§

impl<Out, Func, L: SystemParam> SystemParamFunction<(), Out, (L,)> for Func
where Out: 'static, Func: Send + Sync + 'static + FnMut(L) -> Out + FnMut(SystemParamItem<'_, '_, L>) -> Out,