Trait SystemParam

Source
pub trait SystemParam: Sized {
    type Item<'world>: SystemParam;

    // Required method
    fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>;
}

Required Associated Types§

Source

type Item<'world>: SystemParam

Required Methods§

Source

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

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 ()

Source§

type Item<'world> = ()

Source§

fn get_param<'world>(_world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1> SystemParam for (T1,)
where T1: SystemParam,

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>,)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2> SystemParam for (T1, T2)
where T1: SystemParam, T2: SystemParam,

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3> SystemParam for (T1, T2, T3)
where T1: SystemParam, T2: SystemParam, T3: SystemParam,

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4> SystemParam for (T1, T2, T3, T4)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5> SystemParam for (T1, T2, T3, T4, T5)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6> SystemParam for (T1, T2, T3, T4, T5, T6)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7> SystemParam for (T1, T2, T3, T4, T5, T6, T7)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8, T9)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>, <T9 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>, <T9 as SystemParam>::Item<'world>, <T10 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>, <T9 as SystemParam>::Item<'world>, <T10 as SystemParam>::Item<'world>, <T11 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>, <T9 as SystemParam>::Item<'world>, <T10 as SystemParam>::Item<'world>, <T11 as SystemParam>::Item<'world>, <T12 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>, <T9 as SystemParam>::Item<'world>, <T10 as SystemParam>::Item<'world>, <T11 as SystemParam>::Item<'world>, <T12 as SystemParam>::Item<'world>, <T13 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>, <T9 as SystemParam>::Item<'world>, <T10 as SystemParam>::Item<'world>, <T11 as SystemParam>::Item<'world>, <T12 as SystemParam>::Item<'world>, <T13 as SystemParam>::Item<'world>, <T14 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>, <T9 as SystemParam>::Item<'world>, <T10 as SystemParam>::Item<'world>, <T11 as SystemParam>::Item<'world>, <T12 as SystemParam>::Item<'world>, <T13 as SystemParam>::Item<'world>, <T14 as SystemParam>::Item<'world>, <T15 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> SystemParam for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)

Source§

type Item<'world> = (<T1 as SystemParam>::Item<'world>, <T2 as SystemParam>::Item<'world>, <T3 as SystemParam>::Item<'world>, <T4 as SystemParam>::Item<'world>, <T5 as SystemParam>::Item<'world>, <T6 as SystemParam>::Item<'world>, <T7 as SystemParam>::Item<'world>, <T8 as SystemParam>::Item<'world>, <T9 as SystemParam>::Item<'world>, <T10 as SystemParam>::Item<'world>, <T11 as SystemParam>::Item<'world>, <T12 as SystemParam>::Item<'world>, <T13 as SystemParam>::Item<'world>, <T14 as SystemParam>::Item<'world>, <T15 as SystemParam>::Item<'world>, <T16 as SystemParam>::Item<'world>)

Source§

fn get_param<'world>(world: UnsafeWorldCell<'world>) -> Self::Item<'world>

Implementors§

Source§

impl<'w> SystemParam for &'w World

Source§

type Item<'world> = &'world World

Source§

impl<'w> SystemParam for &'w mut World

Source§

type Item<'world> = &'world mut World

Source§

impl<'w, Q> SystemParam for Query<'w, Q>
where Q: QueryComponent,

Source§

type Item<'world> = Query<'world, Q>

Source§

impl<'w, R> SystemParam for Res<'w, R>
where R: Resource + 'static,

Source§

type Item<'world> = Res<'world, R>

Source§

impl<'w, R> SystemParam for ResMut<'w, R>
where R: Resource + 'static,

Source§

type Item<'world> = ResMut<'world, R>