pub trait SystemParam: 'static {
type Item;
// Required method
fn fetch(world: &mut State) -> Self::Item;
}
Expand description
Abstraction of a parameter for a system function
Required Associated Types§
Required Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl SystemParam for ()
impl SystemParam for ()
Source§impl<T1> SystemParam for (T1,)where
T1: SystemParam,
implement one parameter for a SystemParam
impl<T1> SystemParam for (T1,)where
T1: SystemParam,
implement one parameter for a SystemParam
Source§impl<T1, T2> SystemParam for (T1, T2)where
T1: SystemParam,
T2: SystemParam,
implement two parameters for a SystemParam
impl<T1, T2> SystemParam for (T1, T2)where
T1: SystemParam,
T2: SystemParam,
implement two parameters for a SystemParam
Source§impl<T1, T2, T3> SystemParam for (T1, T2, T3)
implement three parameters for a SystemParam
impl<T1, T2, T3> SystemParam for (T1, T2, T3)
implement three parameters for a SystemParam
type Item = (<T1 as SystemParam>::Item, <T2 as SystemParam>::Item, <T3 as SystemParam>::Item)
fn fetch(world: &mut State) -> Self::Item
Source§impl<T1, T2, T3, T4> SystemParam for (T1, T2, T3, T4)
implement four parameters for a SystemParam
impl<T1, T2, T3, T4> SystemParam for (T1, T2, T3, T4)
implement four parameters for a SystemParam
type Item = (<T1 as SystemParam>::Item, <T2 as SystemParam>::Item, <T3 as SystemParam>::Item, <T4 as SystemParam>::Item)
fn fetch(world: &mut State) -> Self::Item
Source§impl<T1, T2, T3, T4, T5> SystemParam for (T1, T2, T3, T4, T5)
implement five parameters for a SystemParam
impl<T1, T2, T3, T4, T5> SystemParam for (T1, T2, T3, T4, T5)
implement five parameters for a SystemParam
type Item = (<T1 as SystemParam>::Item, <T2 as SystemParam>::Item, <T3 as SystemParam>::Item, <T4 as SystemParam>::Item, <T5 as SystemParam>::Item)
fn fetch(world: &mut State) -> Self::Item
Source§impl<T1, T2, T3, T4, T5, T6> SystemParam for (T1, T2, T3, T4, T5, T6)where
T1: SystemParam,
T2: SystemParam,
T3: SystemParam,
T4: SystemParam,
T5: SystemParam,
T6: SystemParam,
implement six parameters for a SystemParam
impl<T1, T2, T3, T4, T5, T6> SystemParam for (T1, T2, T3, T4, T5, T6)where
T1: SystemParam,
T2: SystemParam,
T3: SystemParam,
T4: SystemParam,
T5: SystemParam,
T6: SystemParam,
implement six parameters for a SystemParam
type Item = (<T1 as SystemParam>::Item, <T2 as SystemParam>::Item, <T3 as SystemParam>::Item, <T4 as SystemParam>::Item, <T5 as SystemParam>::Item, <T6 as SystemParam>::Item)
fn fetch(world: &mut State) -> Self::Item
Source§impl<T1, T2, T3, T4, T5, T6, T7> SystemParam for (T1, T2, T3, T4, T5, T6, T7)where
T1: SystemParam,
T2: SystemParam,
T3: SystemParam,
T4: SystemParam,
T5: SystemParam,
T6: SystemParam,
T7: SystemParam,
implement seven parameters for a SystemParam
impl<T1, T2, T3, T4, T5, T6, T7> SystemParam for (T1, T2, T3, T4, T5, T6, T7)where
T1: SystemParam,
T2: SystemParam,
T3: SystemParam,
T4: SystemParam,
T5: SystemParam,
T6: SystemParam,
T7: SystemParam,
implement seven parameters for a SystemParam
type Item = (<T1 as SystemParam>::Item, <T2 as SystemParam>::Item, <T3 as SystemParam>::Item, <T4 as SystemParam>::Item, <T5 as SystemParam>::Item, <T6 as SystemParam>::Item, <T7 as SystemParam>::Item)
fn fetch(world: &mut State) -> Self::Item
Source§impl<T1, T2, T3, T4, T5, T6, T7, T8> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8)where
T1: SystemParam,
T2: SystemParam,
T3: SystemParam,
T4: SystemParam,
T5: SystemParam,
T6: SystemParam,
T7: SystemParam,
T8: SystemParam,
implement seven parameters for a SystemParam
impl<T1, T2, T3, T4, T5, T6, T7, T8> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8)where
T1: SystemParam,
T2: SystemParam,
T3: SystemParam,
T4: SystemParam,
T5: SystemParam,
T6: SystemParam,
T7: SystemParam,
T8: SystemParam,
implement seven parameters for a SystemParam