[][src]Crate bevy_ecs

Modules

bevy_utils
lazy_static

A macro for declaring lazily evaluated statics.

prelude

Macros

smaller_tuples_too

Imagine macro parameters, but more like those Russian dolls.

Structs

Added

Query transformer that retrieves components of type T that have been added since the start of the frame.

Archetype

A collection of entities having the same component types

ArchetypeAccess

Provides information about the archetypes a System reads and writes

ArchetypesGeneration

Determines freshness of information derived from World::archetypes

Batch

A sequence of entities yielded by ParIter

BatchedIter

Batched version of QueryIter

BuiltEntity

The output of an EntityBuilder, suitable for passing to World::spawn or World::insert

Changed

Query transformer that retrieves components of type T that have either been mutated or added since the start of the frame.

ChangedRes

A shared borrow of a Resource that will only return in a query if the Resource has been changed

Commands

A queue of Commands to run on the current World and Resources

CommandsInternal
Entity

Lightweight unique ID of an entity

EntityBuilder

Helper for incrementally constructing a bundle of components with dynamic component types

EntityReserver

Reserves entities in a way that is usable in multi-threaded contexts.

ExecutorStage
FetchResourceChanged

Fetches a shared resource reference

FetchResourceLocalMut

Fetches a Local<T> resource reference

FetchResourceOr
FetchResourceRead

Fetches a shared resource reference

FetchResourceWrite

Fetches a unique resource reference

Insert
InsertResource
Local

Local resources are unique per-system. Two instances of the same system will each have their own resource. Local resources are automatically initialized using the FromResources trait.

Location

A location of an entity in an archetype

MissingComponent

Error indicating that an entity did not have a required component

Mut

Unique borrow of an entity's component

Mutated

Query transformer that retrieves components of type T that have been mutated since the start of the frame. Added components do not count as mutated.

NoSuchEntity

Error indicating that no entity with a particular ID exists

Or

Query transformer performing a logical or on a pair of queries Intended to be used on Mutated or Changed queries.

OrRes
ParIter

Batched version of QueryIter

ParallelExecutor

Executes each schedule stage in parallel by analyzing system dependencies. System execution order is undefined except under the following conditions:

Query

Provides scoped access to a World according to a given HecsQuery

QueryBorrow

A borrow of a World sufficient to execute the query Q

QueryBorrowChecked

A borrow of a World sufficient to execute the query Q

QueryIter

Iterator over the set of entities with the components in Q

QueryOne

A borrow of a World sufficient to execute the query Q on a single entity

QueryOneChecked

A borrow of a World sufficient to execute the query Q on a single entity

Ref

Shared borrow of an entity's component

RefMut

Unique borrow of an entity's component

Res

Shared borrow of a Resource

ResMut

Unique borrow of a Resource

Resources

A collection of resource instances identified by their type.

Schedule

An ordered collection of stages, which each contain an ordered list of Systems. Schedules are essentially the "execution plan" for an App's systems. They are run on a given World and Resources reference.

SpawnBatchIter

Entity IDs created by World::spawn_batch

SystemId
TypeAccess

Provides information about the types a System reads and writes

TypeInfo

Metadata required to store a component

TypeState

Metadata about a type stored in an archetype

With

Query transformer skipping entities that do not have a T component

Without

Query transformer skipping entities that have a T component

World

An unordered collection of entities, each having any number of distinctly typed components

WorldBuilder

Modify a World using the builder pattern

Enums

Access

Type of access a Query may have to an Archetype

Command

A queued command to mutate the current World or Resources

ComponentError

Errors that arise when accessing components

QueryError

An error that occurs when using a Query

ResourceIndex
ThreadLocalExecution

Determines the strategy used to run the run_thread_local function in a System

Traits

Bundle

A statically typed collection of components

Component

Types that can be components, implemented automatically for all Send + Sync + 'static types

DynamicBundle

A dynamically typed collection of components

Fetch

Streaming iterators over contiguous homogeneous ranges of components

FetchResource

Streaming iterators over contiguous homogeneous ranges of resources

FromResources

Creates Self using data from the Resources collection

HecsQuery

A collection of component types to fetch from a World

IntoForEachSystem

Converts Self into a For-Each system

IntoQuerySystem

Converts Self into a Query System

IntoThreadLocalSystem

Converts Self into a thread local system

Query

A collection of component types to fetch from a World

ReadOnlyFetch

A fetch that is read only. This should only be implemented for read-only fetches.

Resource

A Resource type

ResourceQuery

A collection of resource types fetch from a Resources collection

ResourcesWriter
System

An ECS system that can be added to a Schedule

ThreadLocalSystemFn

A thread local system function

UnsafeClone

A clone that is unsafe to perform. You probably shouldn't use this.

WorldBuilderSource

Converts a reference to Self to a WorldBuilder

WorldWriter

A World mutation

Derive Macros

Bundle

Implement Bundle for a monomorphic struct