Expand description
Contains APIs for ordering systems and executing them on a World
Re-exports§
Modules§
- common_
conditions - A collection of run conditions that may be useful in any bevy app.
- graph
- An implementation of a graph data structure.
- passes
- Included optional schedule build passes.
Structs§
- Ambiguous
System Conflicts Warning - Error returned when there are ambiguous system conflicts detected.
- Anonymous
Set - A
SystemSetimplicitly created when usingSchedule::add_systemsorSchedule::configure_sets. - Apply
Deferred - A special
Systemthat instructs the executor to callSystem::apply_deferredon the systems that have run but not applied theirDeferredsystem parameters (likeCommands) or other system buffers. - Compact
Node IdAnd Direction - Compact storage of a
NodeIdand aDirection. - Compact
Node IdPair - Compact storage of a
NodeIdpair. - Condition
With Access - A
BoxedConditionstored alongside the access returned fromSystem::initialize. - Conflicting
Systems - Pairs of systems that conflict with each other along with the components
they conflict on, which prevents them from running in parallel. If the
component list is empty, the systems conflict on
Worldaccess in general (e.g. one of them is exclusive, or both systems haveQuery<EntityMut>). - Main
Thread Executor - New-typed
ThreadExecutorResourcethat is used to run systems on the main thread - Multi
Threaded Executor - Runs the schedule using a thread pool. Non-conflicting systems can run in parallel.
- Schedule
- A collection of systems, and the metadata and executor needed to run them in a certain order under certain conditions.
- Schedule
Build Settings - Specifies miscellaneous settings for schedule construction.
- Schedule
Config - Stores configuration for a single generic node (a system or a system set)
- Schedule
Graph - Metadata for a
Schedule. - Schedule
NotInitialized - Error to denote that
Schedule::initializeorSchedule::runhas not yet been called for this schedule. - Schedules
- Resource that stores
Schedules mapped toScheduleLabels excluding the current runningSchedule. - Single
Threaded Executor - Runs the schedule using a single thread.
- Stepping
- Resource for controlling system stepping behavior
- System
Key - A unique identifier for a system in a
ScheduleGraph. - System
Schedule - Holds systems and conditions of a
Schedulesorted in topological order (along with dependency information formulti_threadedexecution). - System
SetKey - A unique identifier for a system set in a
ScheduleGraph. - System
Sets - Container for system sets in a schedule.
- System
Type Set - A
SystemSetgrouping instances of the same function. - System
Type SetAmbiguity Error - Error returned when calling
SystemSets::check_type_set_ambiguity. - System
With Access - A
ScheduleSystemstored alongside the access returned fromSystem::initialize. - Systems
- Container for systems in a schedule.
Enums§
- Chain
- Chain systems into dependencies
- Executor
Kind - Specifies how a
Schedulewill be run. - LogLevel
- Specifies how schedule construction should respond to detecting a certain kind of issue.
- NodeId
- Unique identifier for a system or system set stored in a
ScheduleGraph. - Schedule
Build Error - Category of errors encountered during
Schedule::initialize. - Schedule
Build Warning - Category of warnings encountered during
Schedule::initialize. - Schedule
Cleanup Policy - Policy to use when removing systems.
- Schedule
Configs - Single or nested configurations for
Schedulables. - Schedule
Error - Error returned from some
Schedulemethods
Traits§
- Into
Schedule Configs - Types that can convert into a
ScheduleConfigs. - Into
System Set - Types that can be converted into a
SystemSet. - Schedulable
- Stores data to differentiate different schedulable structs.
- Schedule
Build Pass - A pass for modular modification of the dependency graph.
- Schedule
Label - A strongly-typed class of labels used to identify a
Schedule. - System
Condition - A system that determines if one or more scheduled systems should run.
- System
Set - System sets are tag-like labels that can be used to group systems together.
Type Aliases§
- And
- Combines the outputs of two systems using the
&&operator. - Boxed
Condition - A type-erased run condition stored in a
Box. - Interned
Schedule Label - A shorthand for
Interned<dyn ScheduleLabel>. - Interned
System Set - A shorthand for
Interned<dyn SystemSet>. - Nand
- Combines and inverts the outputs of two systems using the
&&and!operators. - Nor
- Combines and inverts the outputs of two systems using the
||and!operators. - NotSystem
- Invokes
Notwith the output of another system. - Or
- Combines the outputs of two systems using the
||operator. - Xnor
- Combines and inverts the outputs of two systems using the
^and!operators. - Xor
- Combines the outputs of two systems using the
^operator.
Derive Macros§
- Schedule
Label - Derive macro generating an impl of the trait
ScheduleLabel. - System
Set - Derive macro generating an impl of the trait
SystemSet.