pub trait StateSet: StateSetSealed {
const SET_DEPENDENCY_DEPTH: usize;
// Required methods
fn register_computed_state_systems_in_schedule<T>(schedule: &mut Schedule)
where T: ComputedStates<SourceStates = Self>;
fn register_sub_state_systems_in_schedule<T>(schedule: &mut Schedule)
where T: SubStates<SourceStates = Self>;
}
Expand description
Required Associated Constants§
sourceconst SET_DEPENDENCY_DEPTH: usize
const SET_DEPENDENCY_DEPTH: usize
The total DEPENDENCY_DEPTH
of all
the states that are part of this StateSet
, added together.
Used to de-duplicate computed state executions and prevent cyclic computed states.
Required Methods§
sourcefn register_computed_state_systems_in_schedule<T>(schedule: &mut Schedule)where
T: ComputedStates<SourceStates = Self>,
fn register_computed_state_systems_in_schedule<T>(schedule: &mut Schedule)where
T: ComputedStates<SourceStates = Self>,
Sets up the systems needed to compute T
whenever any State
in this
StateSet
is changed.
sourcefn register_sub_state_systems_in_schedule<T>(schedule: &mut Schedule)where
T: SubStates<SourceStates = Self>,
fn register_sub_state_systems_in_schedule<T>(schedule: &mut Schedule)where
T: SubStates<SourceStates = Self>,
Sets up the systems needed to compute whether T
exists whenever any State
in this
StateSet
is changed.
Object Safety§
This trait is not object safe.