Trait bevy_ecs::system::SystemParam[][src]

pub trait SystemParam: Sized {
    type Fetch: for<'a> SystemParamFetch<'a>;
}

A parameter that can be used in a system function

Derive

This trait can be derived.

use bevy_ecs::system::SystemParam;

#[derive(SystemParam)]
pub struct MyParam<'a> {
    foo: Res<'a, usize>,
}

fn my_system(param: MyParam) {
    // Access the resource through `param.foo`
}

Associated Types

type Fetch: for<'a> SystemParamFetch<'a>[src]

Loading content...

Implementations on Foreign Types

impl<'a, T: Component> SystemParam for Option<Res<'a, T>>[src]

impl<'a, T: Component> SystemParam for Option<ResMut<'a, T>>[src]

impl SystemParam for ()[src]

type Fetch = ()

impl<P0: SystemParam> SystemParam for (P0,)[src]

type Fetch = (P0::Fetch,)

impl<P0: SystemParam, P1: SystemParam> SystemParam for (P0, P1)[src]

type Fetch = (P0::Fetch, P1::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam> SystemParam for (P0, P1, P2)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam> SystemParam for (P0, P1, P2, P3)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam> SystemParam for (P0, P1, P2, P3, P4)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam> SystemParam for (P0, P1, P2, P3, P4, P5)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam> SystemParam for (P0, P1, P2, P3, P4, P5, P6)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch, P8::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch, P8::Fetch, P9::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam, P10: SystemParam> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch, P8::Fetch, P9::Fetch, P10::Fetch)

impl<P0: SystemParam, P1: SystemParam, P2: SystemParam, P3: SystemParam, P4: SystemParam, P5: SystemParam, P6: SystemParam, P7: SystemParam, P8: SystemParam, P9: SystemParam, P10: SystemParam, P11: SystemParam> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch, P8::Fetch, P9::Fetch, P10::Fetch, P11::Fetch)

impl<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> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch, P8::Fetch, P9::Fetch, P10::Fetch, P11::Fetch, P12::Fetch)

impl<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> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch, P8::Fetch, P9::Fetch, P10::Fetch, P11::Fetch, P12::Fetch, P13::Fetch)

impl<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> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch, P8::Fetch, P9::Fetch, P10::Fetch, P11::Fetch, P12::Fetch, P13::Fetch, P14::Fetch)

impl<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, P15: SystemParam> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15)[src]

type Fetch = (P0::Fetch, P1::Fetch, P2::Fetch, P3::Fetch, P4::Fetch, P5::Fetch, P6::Fetch, P7::Fetch, P8::Fetch, P9::Fetch, P10::Fetch, P11::Fetch, P12::Fetch, P13::Fetch, P14::Fetch, P15::Fetch)

Loading content...

Implementors

impl SystemParam for SystemChangeTick[src]

impl<'a> SystemParam for &'a Archetypes[src]

impl<'a> SystemParam for &'a Bundles[src]

impl<'a> SystemParam for &'a Components[src]

impl<'a> SystemParam for &'a Entities[src]

impl<'a> SystemParam for Commands<'a>[src]

impl<'a, Q: WorldQuery + 'static, F: WorldQuery + 'static> SystemParam for Query<'a, Q, F> where
    F::Fetch: FilterFetch
[src]

type Fetch = QueryState<Q, F>

impl<'a, T: 'static> SystemParam for NonSend<'a, T>[src]

impl<'a, T: 'static> SystemParam for NonSendMut<'a, T>[src]

impl<'a, T: Component + FromWorld> SystemParam for Local<'a, T>[src]

type Fetch = LocalState<T>

impl<'a, T: Component> SystemParam for RemovedComponents<'a, T>[src]

impl<'a, T: Component> SystemParam for Res<'a, T>[src]

type Fetch = ResState<T>

impl<'a, T: Component> SystemParam for ResMut<'a, T>[src]

type Fetch = ResMutState<T>

impl<'q0, 'q1, 'q2, 'q3, Q0: WorldQuery + 'static, Q1: WorldQuery + 'static, Q2: WorldQuery + 'static, Q3: WorldQuery + 'static, F0: WorldQuery + 'static, F1: WorldQuery + 'static, F2: WorldQuery + 'static, F3: WorldQuery + 'static> SystemParam for QuerySet<(Query<'q0, Q0, F0>, Query<'q1, Q1, F1>, Query<'q2, Q2, F2>, Query<'q3, Q3, F3>)> where
    F0::Fetch: FilterFetch,
    F1::Fetch: FilterFetch,
    F2::Fetch: FilterFetch,
    F3::Fetch: FilterFetch
[src]

type Fetch = QuerySetState<(QueryState<Q0, F0>, QueryState<Q1, F1>, QueryState<Q2, F2>, QueryState<Q3, F3>)>

impl<'q0, 'q1, 'q2, Q0: WorldQuery + 'static, Q1: WorldQuery + 'static, Q2: WorldQuery + 'static, F0: WorldQuery + 'static, F1: WorldQuery + 'static, F2: WorldQuery + 'static> SystemParam for QuerySet<(Query<'q0, Q0, F0>, Query<'q1, Q1, F1>, Query<'q2, Q2, F2>)> where
    F0::Fetch: FilterFetch,
    F1::Fetch: FilterFetch,
    F2::Fetch: FilterFetch
[src]

type Fetch = QuerySetState<(QueryState<Q0, F0>, QueryState<Q1, F1>, QueryState<Q2, F2>)>

impl<'q0, 'q1, Q0: WorldQuery + 'static, Q1: WorldQuery + 'static, F0: WorldQuery + 'static, F1: WorldQuery + 'static> SystemParam for QuerySet<(Query<'q0, Q0, F0>, Query<'q1, Q1, F1>)> where
    F0::Fetch: FilterFetch,
    F1::Fetch: FilterFetch
[src]

type Fetch = QuerySetState<(QueryState<Q0, F0>, QueryState<Q1, F1>)>

impl<'q0, Q0: WorldQuery + 'static, F0: WorldQuery + 'static> SystemParam for QuerySet<(Query<'q0, Q0, F0>,)> where
    F0::Fetch: FilterFetch
[src]

Loading content...