Trait SystemParam
pub unsafe trait SystemParam: Sized {
type State: Send + Sync + 'static;
type Item<'world, 'state>: SystemParam<State = Self::State>;
// Required methods
fn init_state(
world: &mut World,
system_meta: &mut SystemMeta,
) -> Self::State;
unsafe fn get_param<'world, 'state>(
state: &'state mut Self::State,
system_meta: &SystemMeta,
world: UnsafeWorldCell<'world>,
change_tick: Tick,
) -> Self::Item<'world, 'state>;
// Provided methods
unsafe fn new_archetype(
state: &mut Self::State,
archetype: &Archetype,
system_meta: &mut SystemMeta,
) { ... }
fn apply(
state: &mut Self::State,
system_meta: &SystemMeta,
world: &mut World,
) { ... }
fn queue(
state: &mut Self::State,
system_meta: &SystemMeta,
world: DeferredWorld<'_>,
) { ... }
}
Expand description
A parameter that can be used in a System
.
§Derive
This trait can be derived with the super::SystemParam
macro.
This macro only works if each field on the derived struct implements SystemParam
.
Note: There are additional requirements on the field types.
See the Generic SystemParam
s section for details and workarounds of the probable
cause if this derive causes an error to be emitted.
Derived SystemParam
structs may have two lifetimes: 'w
for data stored in the World
,
and 's
for data stored in the parameter’s state.
The following list shows the most common SystemParam
s and which lifetime they require
Query<'w, 's, Entity>,
Res<'w, SomeResource>,
ResMut<'w, SomeOtherResource>,
Local<'s, u8>,
Commands<'w, 's>,
EventReader<'w, 's, SomeEvent>,
EventWriter<'w, SomeEvent>
§PhantomData
PhantomData
is a special type of SystemParam
that does nothing.
This is useful for constraining generic types or lifetimes.
§Example
use std::marker::PhantomData;
use bevy_ecs::system::SystemParam;
#[derive(SystemParam)]
struct MyParam<'w, Marker: 'static> {
foo: Res<'w, SomeResource>,
marker: PhantomData<Marker>,
}
fn my_system<T: 'static>(param: MyParam<T>) {
// Access the resource through `param.foo`
}
§Generic SystemParam
s
When using the derive macro, you may see an error in the form of:
expected ... [ParamType]
found associated type `<[ParamType] as SystemParam>::Item<'_, '_>`
where [ParamType]
is the type of one of your fields.
To solve this error, you can wrap the field of type [ParamType]
with StaticSystemParam
(i.e. StaticSystemParam<[ParamType]>
).
§Details
The derive macro requires that the SystemParam
implementation of
each field F
’s Item
’s is itself F
(ignoring lifetimes for simplicity).
This assumption is due to type inference reasons, so that the derived SystemParam
can be
used as an argument to a function system.
If the compiler cannot validate this property for [ParamType]
, it will error in the form shown above.
This will most commonly occur when working with SystemParam
s generically, as the requirement
has not been proven to the compiler.
§Safety
The implementor must ensure the following is true.
SystemParam::init_state
correctly registers allWorld
accesses used bySystemParam::get_param
with the providedsystem_meta
.- None of the world accesses may conflict with any prior accesses registered
on
system_meta
.
Required Associated Types§
type Item<'world, 'state>: SystemParam<State = Self::State>
type Item<'world, 'state>: SystemParam<State = Self::State>
The item type returned when constructing this system param.
The value of this associated type should be Self
, instantiated with new lifetimes.
You could think of SystemParam::Item<'w, 's>
as being an operation that changes the lifetimes bound to Self
.
Required Methods§
fn init_state(world: &mut World, system_meta: &mut SystemMeta) -> Self::State
fn init_state(world: &mut World, system_meta: &mut SystemMeta) -> Self::State
Registers any World
access used by this SystemParam
and creates a new instance of this param’s State
.
unsafe fn get_param<'world, 'state>(
state: &'state mut Self::State,
system_meta: &SystemMeta,
world: UnsafeWorldCell<'world>,
change_tick: Tick,
) -> Self::Item<'world, 'state>
unsafe fn get_param<'world, 'state>( state: &'state mut Self::State, system_meta: &SystemMeta, world: UnsafeWorldCell<'world>, change_tick: Tick, ) -> Self::Item<'world, 'state>
Creates a parameter to be passed into a SystemParamFunction
.
§Safety
- The passed
UnsafeWorldCell
must have access to any world data registered ininit_state
. world
must be the sameWorld
that was used to initializestate
.
Provided Methods§
unsafe fn new_archetype(
state: &mut Self::State,
archetype: &Archetype,
system_meta: &mut SystemMeta,
)
unsafe fn new_archetype( state: &mut Self::State, archetype: &Archetype, system_meta: &mut SystemMeta, )
For the specified Archetype
, registers the components accessed by this SystemParam
(if applicable).a
§Safety
archetype
must be from the World
used to initialize state
in init_state
.
fn apply(state: &mut Self::State, system_meta: &SystemMeta, world: &mut World)
fn apply(state: &mut Self::State, system_meta: &SystemMeta, world: &mut World)
Applies any deferred mutations stored in this SystemParam
’s state.
This is used to apply Commands
during apply_deferred
.
fn queue(
state: &mut Self::State,
system_meta: &SystemMeta,
world: DeferredWorld<'_>,
)
fn queue( state: &mut Self::State, system_meta: &SystemMeta, world: DeferredWorld<'_>, )
Queues any deferred mutations to be applied at the next apply_deferred
.
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§
§impl SystemParam for ()
impl SystemParam for ()
type State = ()
type Item<'w, 's> = ()
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <() as SystemParam>::State
unsafe fn new_archetype( _: &mut <() as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <() as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <() as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <() as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <() as SystemParam>::Item<'w, 's>
§impl<'a, T> SystemParam for Option<NonSendMut<'a, T>>where
T: 'static,
impl<'a, T> SystemParam for Option<NonSendMut<'a, T>>where
T: 'static,
type State = ComponentId
type Item<'w, 's> = Option<NonSendMut<'w, T>>
fn init_state( world: &mut World, system_meta: &mut SystemMeta, ) -> <Option<NonSendMut<'a, T>> as SystemParam>::State
unsafe fn get_param<'w, 's>( _: &'s mut <Option<NonSendMut<'a, T>> as SystemParam>::State, system_meta: &SystemMeta, world: UnsafeWorldCell<'w>, change_tick: Tick, ) -> <Option<NonSendMut<'a, T>> as SystemParam>::Item<'w, 's>
§impl<'a, T> SystemParam for Option<Res<'a, T>>where
T: Resource,
impl<'a, T> SystemParam for Option<Res<'a, T>>where
T: Resource,
type State = ComponentId
type Item<'w, 's> = Option<Res<'w, T>>
fn init_state( world: &mut World, system_meta: &mut SystemMeta, ) -> <Option<Res<'a, T>> as SystemParam>::State
unsafe fn get_param<'w, 's>( _: &'s mut <Option<Res<'a, T>> as SystemParam>::State, system_meta: &SystemMeta, world: UnsafeWorldCell<'w>, change_tick: Tick, ) -> <Option<Res<'a, T>> as SystemParam>::Item<'w, 's>
§impl<'a, T> SystemParam for Option<ResMut<'a, T>>where
T: Resource,
impl<'a, T> SystemParam for Option<ResMut<'a, T>>where
T: Resource,
type State = ComponentId
type Item<'w, 's> = Option<ResMut<'w, T>>
fn init_state( world: &mut World, system_meta: &mut SystemMeta, ) -> <Option<ResMut<'a, T>> as SystemParam>::State
unsafe fn get_param<'w, 's>( _: &'s mut <Option<ResMut<'a, T>> as SystemParam>::State, system_meta: &SystemMeta, world: UnsafeWorldCell<'w>, change_tick: Tick, ) -> <Option<ResMut<'a, T>> as SystemParam>::Item<'w, 's>
§impl<P0> SystemParam for (P0,)where
P0: SystemParam,
impl<P0> SystemParam for (P0,)where
P0: SystemParam,
type State = (<P0 as SystemParam>::State,)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>,)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0,) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0,) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0,) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0,) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0,) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0,) as SystemParam>::Item<'w, 's>
§impl<P0, P1> SystemParam for (P0, P1)where
P0: SystemParam,
P1: SystemParam,
impl<P0, P1> SystemParam for (P0, P1)where
P0: SystemParam,
P1: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2> SystemParam for (P0, P1, P2)
impl<P0, P1, P2> SystemParam for (P0, P1, P2)
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3> SystemParam for (P0, P1, P2, P3)
impl<P0, P1, P2, P3> SystemParam for (P0, P1, P2, P3)
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4> SystemParam for (P0, P1, P2, P3, P4)
impl<P0, P1, P2, P3, P4> SystemParam for (P0, P1, P2, P3, P4)
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5> SystemParam for (P0, P1, P2, P3, P4, P5)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
impl<P0, P1, P2, P3, P4, P5> SystemParam for (P0, P1, P2, P3, P4, P5)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6> SystemParam for (P0, P1, P2, P3, P4, P5, P6)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
impl<P0, P1, P2, P3, P4, P5, P6> SystemParam for (P0, P1, P2, P3, P4, P5, P6)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
impl<P0, P1, P2, P3, P4, P5, P6, P7> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7, P8> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
P8: SystemParam,
impl<P0, P1, P2, P3, P4, P5, P6, P7, P8> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
P8: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State, <P8 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>, <P8 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
P8: SystemParam,
P9: SystemParam,
impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
P8: SystemParam,
P9: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State, <P8 as SystemParam>::State, <P9 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>, <P8 as SystemParam>::Item<'w, 's>, <P9 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
P8: SystemParam,
P9: SystemParam,
P10: SystemParam,
impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
P8: SystemParam,
P9: SystemParam,
P10: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State, <P8 as SystemParam>::State, <P9 as SystemParam>::State, <P10 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>, <P8 as SystemParam>::Item<'w, 's>, <P9 as SystemParam>::Item<'w, 's>, <P10 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11)where
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<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11)where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
P8: SystemParam,
P9: SystemParam,
P10: SystemParam,
P11: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State, <P8 as SystemParam>::State, <P9 as SystemParam>::State, <P10 as SystemParam>::State, <P11 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>, <P8 as SystemParam>::Item<'w, 's>, <P9 as SystemParam>::Item<'w, 's>, <P10 as SystemParam>::Item<'w, 's>, <P11 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12)where
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<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12)where
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,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State, <P8 as SystemParam>::State, <P9 as SystemParam>::State, <P10 as SystemParam>::State, <P11 as SystemParam>::State, <P12 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>, <P8 as SystemParam>::Item<'w, 's>, <P9 as SystemParam>::Item<'w, 's>, <P10 as SystemParam>::Item<'w, 's>, <P11 as SystemParam>::Item<'w, 's>, <P12 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13)where
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<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13)where
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,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State, <P8 as SystemParam>::State, <P9 as SystemParam>::State, <P10 as SystemParam>::State, <P11 as SystemParam>::State, <P12 as SystemParam>::State, <P13 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>, <P8 as SystemParam>::Item<'w, 's>, <P9 as SystemParam>::Item<'w, 's>, <P10 as SystemParam>::Item<'w, 's>, <P11 as SystemParam>::Item<'w, 's>, <P12 as SystemParam>::Item<'w, 's>, <P13 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14)where
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<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14)where
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,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State, <P8 as SystemParam>::State, <P9 as SystemParam>::State, <P10 as SystemParam>::State, <P11 as SystemParam>::State, <P12 as SystemParam>::State, <P13 as SystemParam>::State, <P14 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>, <P8 as SystemParam>::Item<'w, 's>, <P9 as SystemParam>::Item<'w, 's>, <P10 as SystemParam>::Item<'w, 's>, <P11 as SystemParam>::Item<'w, 's>, <P12 as SystemParam>::Item<'w, 's>, <P13 as SystemParam>::Item<'w, 's>, <P14 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14) as SystemParam>::Item<'w, 's>
§impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15)where
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,
impl<P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15> SystemParam for (P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15)where
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,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State, <P8 as SystemParam>::State, <P9 as SystemParam>::State, <P10 as SystemParam>::State, <P11 as SystemParam>::State, <P12 as SystemParam>::State, <P13 as SystemParam>::State, <P14 as SystemParam>::State, <P15 as SystemParam>::State)
type Item<'w, 's> = (<P0 as SystemParam>::Item<'w, 's>, <P1 as SystemParam>::Item<'w, 's>, <P2 as SystemParam>::Item<'w, 's>, <P3 as SystemParam>::Item<'w, 's>, <P4 as SystemParam>::Item<'w, 's>, <P5 as SystemParam>::Item<'w, 's>, <P6 as SystemParam>::Item<'w, 's>, <P7 as SystemParam>::Item<'w, 's>, <P8 as SystemParam>::Item<'w, 's>, <P9 as SystemParam>::Item<'w, 's>, <P10 as SystemParam>::Item<'w, 's>, <P11 as SystemParam>::Item<'w, 's>, <P12 as SystemParam>::Item<'w, 's>, <P13 as SystemParam>::Item<'w, 's>, <P14 as SystemParam>::Item<'w, 's>, <P15 as SystemParam>::Item<'w, 's>)
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) as SystemParam>::State
unsafe fn new_archetype( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) as SystemParam>::State, _archetype: &Archetype, _system_meta: &mut SystemMeta, )
fn apply( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) as SystemParam>::State, _system_meta: &SystemMeta, _world: &mut World, )
fn queue( _: &mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) as SystemParam>::State, _system_meta: &SystemMeta, _world: DeferredWorld<'_>, )
unsafe fn get_param<'w, 's>( state: &'s mut <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'w>, _change_tick: Tick, ) -> <(P0, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15) as SystemParam>::Item<'w, 's>
§impl<T> SystemParam for Option<NonSend<'_, T>>where
T: 'static,
impl<T> SystemParam for Option<NonSend<'_, T>>where
T: 'static,
type State = ComponentId
type Item<'w, 's> = Option<NonSend<'w, T>>
fn init_state( world: &mut World, system_meta: &mut SystemMeta, ) -> <Option<NonSend<'_, T>> as SystemParam>::State
unsafe fn get_param<'w, 's>( _: &'s mut <Option<NonSend<'_, T>> as SystemParam>::State, system_meta: &SystemMeta, world: UnsafeWorldCell<'w>, change_tick: Tick, ) -> <Option<NonSend<'_, T>> as SystemParam>::Item<'w, 's>
§impl<T> SystemParam for PhantomData<T>where
T: ?Sized,
impl<T> SystemParam for PhantomData<T>where
T: ?Sized,
type State = ()
type Item<'world, 'state> = PhantomData<T>
fn init_state( _world: &mut World, _system_meta: &mut SystemMeta, ) -> <PhantomData<T> as SystemParam>::State
unsafe fn get_param<'world, 'state>( _state: &'state mut <PhantomData<T> as SystemParam>::State, _system_meta: &SystemMeta, _world: UnsafeWorldCell<'world>, _change_tick: Tick, ) -> <PhantomData<T> as SystemParam>::Item<'world, 'state>
Implementors§
§impl SystemParam for ParallelCommands<'_, '_>
impl SystemParam for ParallelCommands<'_, '_>
type State = FetchState
type Item<'w, 's> = ParallelCommands<'w, 's>
§impl SystemParam for SystemChangeTick
impl SystemParam for SystemChangeTick
§impl SystemParam for SystemName<'_>
impl SystemParam for SystemName<'_>
§impl<'_w, '_s, P0> SystemParam for ParamSet<'_w, '_s, (P0,)>where
P0: SystemParam,
impl<'_w, '_s, P0> SystemParam for ParamSet<'_w, '_s, (P0,)>where
P0: SystemParam,
§impl<'_w, '_s, P0, P1> SystemParam for ParamSet<'_w, '_s, (P0, P1)>where
P0: SystemParam,
P1: SystemParam,
impl<'_w, '_s, P0, P1> SystemParam for ParamSet<'_w, '_s, (P0, P1)>where
P0: SystemParam,
P1: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State)
type Item<'w, 's> = ParamSet<'w, 's, (P0, P1)>
§impl<'_w, '_s, P0, P1, P2> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2)>
impl<'_w, '_s, P0, P1, P2> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2)>
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State)
type Item<'w, 's> = ParamSet<'w, 's, (P0, P1, P2)>
§impl<'_w, '_s, P0, P1, P2, P3> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3)>
impl<'_w, '_s, P0, P1, P2, P3> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3)>
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State)
type Item<'w, 's> = ParamSet<'w, 's, (P0, P1, P2, P3)>
§impl<'_w, '_s, P0, P1, P2, P3, P4> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3, P4)>
impl<'_w, '_s, P0, P1, P2, P3, P4> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3, P4)>
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State)
type Item<'w, 's> = ParamSet<'w, 's, (P0, P1, P2, P3, P4)>
§impl<'_w, '_s, P0, P1, P2, P3, P4, P5> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3, P4, P5)>where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
impl<'_w, '_s, P0, P1, P2, P3, P4, P5> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3, P4, P5)>where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State)
type Item<'w, 's> = ParamSet<'w, 's, (P0, P1, P2, P3, P4, P5)>
§impl<'_w, '_s, P0, P1, P2, P3, P4, P5, P6> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3, P4, P5, P6)>where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
impl<'_w, '_s, P0, P1, P2, P3, P4, P5, P6> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3, P4, P5, P6)>where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State)
type Item<'w, 's> = ParamSet<'w, 's, (P0, P1, P2, P3, P4, P5, P6)>
§impl<'_w, '_s, P0, P1, P2, P3, P4, P5, P6, P7> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3, P4, P5, P6, P7)>where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
impl<'_w, '_s, P0, P1, P2, P3, P4, P5, P6, P7> SystemParam for ParamSet<'_w, '_s, (P0, P1, P2, P3, P4, P5, P6, P7)>where
P0: SystemParam,
P1: SystemParam,
P2: SystemParam,
P3: SystemParam,
P4: SystemParam,
P5: SystemParam,
P6: SystemParam,
P7: SystemParam,
type State = (<P0 as SystemParam>::State, <P1 as SystemParam>::State, <P2 as SystemParam>::State, <P3 as SystemParam>::State, <P4 as SystemParam>::State, <P5 as SystemParam>::State, <P6 as SystemParam>::State, <P7 as SystemParam>::State)
type Item<'w, 's> = ParamSet<'w, 's, (P0, P1, P2, P3, P4, P5, P6, P7)>
§impl<'a> SystemParam for &'a Archetypes
impl<'a> SystemParam for &'a Archetypes
§impl<'a> SystemParam for &'a Components
impl<'a> SystemParam for &'a Components
§impl<'a> SystemParam for &'a RemovedComponentEvents
impl<'a> SystemParam for &'a RemovedComponentEvents
§impl<'a, T> SystemParam for Local<'a, T>
impl<'a, T> SystemParam for Local<'a, T>
§impl<'a, T> SystemParam for NonSend<'a, T>where
T: 'static,
impl<'a, T> SystemParam for NonSend<'a, T>where
T: 'static,
§impl<'a, T> SystemParam for NonSendMut<'a, T>where
T: 'static,
impl<'a, T> SystemParam for NonSendMut<'a, T>where
T: 'static,
type State = ComponentId
type Item<'w, 's> = NonSendMut<'w, T>
§impl<'a, T> SystemParam for Res<'a, T>where
T: Resource,
impl<'a, T> SystemParam for Res<'a, T>where
T: Resource,
§impl<'a, T> SystemParam for ResMut<'a, T>where
T: Resource,
impl<'a, T> SystemParam for ResMut<'a, T>where
T: Resource,
§impl<'w> SystemParam for DeferredWorld<'w>
SAFETY: DeferredWorld
can read all components and resources but cannot be used to gain any other mutable references.
impl<'w> SystemParam for DeferredWorld<'w>
SAFETY: DeferredWorld
can read all components and resources but cannot be used to gain any other mutable references.