Skip to main content

SystemWithMarker

Trait SystemWithMarker 

pub unsafe trait SystemWithMarker<M>:
    'static
    + Send
    + Sync
where M: 'static,
{ // Required methods fn fill_data_usage( &self, usage: &mut DataUsageBuilder, types: &TypesRegistryCache, ); unsafe fn execute<'e>(&self, data: SystemInput<'e>); fn system_name(&self) -> &'static str; }
Expand description

§Safety

Implemented automatically.

Required Methods§

fn fill_data_usage( &self, usage: &mut DataUsageBuilder, types: &TypesRegistryCache, )

unsafe fn execute<'e>(&self, data: SystemInput<'e>)

§Safety

Should be managed by system scheduler and data usage.

fn system_name(&self) -> &'static str

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>, <P7 as SystemParam>::Item<'a>, <P8 as SystemParam>::Item<'a>, <P9 as SystemParam>::Item<'a>, <P10 as SystemParam>::Item<'a>, <P11 as SystemParam>::Item<'a>, <P12 as SystemParam>::Item<'a>, <P13 as SystemParam>::Item<'a>, <P14 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam, P10: SystemParam, P11: SystemParam, P12: SystemParam, P13: SystemParam, P14: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>, <P7 as SystemParam>::Item<'a>, <P8 as SystemParam>::Item<'a>, <P9 as SystemParam>::Item<'a>, <P10 as SystemParam>::Item<'a>, <P11 as SystemParam>::Item<'a>, <P12 as SystemParam>::Item<'a>, <P13 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam, P10: SystemParam, P11: SystemParam, P12: SystemParam, P13: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>, <P7 as SystemParam>::Item<'a>, <P8 as SystemParam>::Item<'a>, <P9 as SystemParam>::Item<'a>, <P10 as SystemParam>::Item<'a>, <P11 as SystemParam>::Item<'a>, <P12 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam, P10: SystemParam, P11: SystemParam, P12: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>, <P7 as SystemParam>::Item<'a>, <P8 as SystemParam>::Item<'a>, <P9 as SystemParam>::Item<'a>, <P10 as SystemParam>::Item<'a>, <P11 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam, P10: SystemParam, P11: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>, <P7 as SystemParam>::Item<'a>, <P8 as SystemParam>::Item<'a>, <P9 as SystemParam>::Item<'a>, <P10 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam, P10: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6, P7, P8, P9> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>, <P7 as SystemParam>::Item<'a>, <P8 as SystemParam>::Item<'a>, <P9 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6, P7, P8> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6, P7, P8)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6, P7, P8) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>, <P7 as SystemParam>::Item<'a>, <P8 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6, P7, P8): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6, P7> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6, P7)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6, P7) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>, <P7 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6, P7): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5, P6> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5, P6)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5, P6) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>, <P6 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5, P6): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4, P5> SystemWithMarker<fn(P0, P1, P2, P3, P4, P5)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4, P5) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>, <P5 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4, P5): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam,

§

impl<F, R, P0, P1, P2, P3, P4> SystemWithMarker<fn(P0, P1, P2, P3, P4)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3, P4) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>, <P4 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3, P4): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam,

§

impl<F, R, P0, P1, P2, P3> SystemWithMarker<fn(P0, P1, P2, P3)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2, P3) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>, <P3 as SystemParam>::Item<'a>), fn(P0, P1, P2, P3): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam,

§

impl<F, R, P0, P1, P2> SystemWithMarker<fn(P0, P1, P2)> for F
where F: 'static + Send + Sync + Fn(P0, P1, P2) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>, <P2 as SystemParam>::Item<'a>), fn(P0, P1, P2): 'static, P0: SystemParam, P1: SystemParam, P2: SystemParam,

§

impl<F, R, P0, P1> SystemWithMarker<fn(P0, P1)> for F
where F: 'static + Send + Sync + Fn(P0, P1) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>, <P1 as SystemParam>::Item<'a>), fn(P0, P1): 'static, P0: SystemParam, P1: SystemParam,

§

impl<F, R, P0> SystemWithMarker<fn(P0)> for F
where F: 'static + Send + Sync + Fn(P0) -> R + for<'a> Fn(<P0 as SystemParam>::Item<'a>), fn(P0): 'static, P0: SystemParam,

§

impl<F, R> SystemWithMarker<fn()> for F
where F: 'static + Send + Sync + Fn() -> R + for<'a> Fn(), fn(): 'static,