Struct specs::join::MaybeJoin[][src]

pub struct MaybeJoin<J: Join>(pub J);

A Join-able structure that yields all indices, returning None for all missing elements and Some(T) for found elements.

For usage see Join::maybe().

WARNING: Do not have a join of only MaybeJoins. Otherwise the join will iterate over every single index of the bitset. If you want a join with all MaybeJoins, add an EntitiesRes to the join as well to bound the join to all entities that are alive.

Trait Implementations

impl<T> Join for MaybeJoin<T> where
    T: Join
[src]

Type of joined components.

Type of joined storages.

Type of joined bit mask.

Open this join by returning the mask and the storages. Read more

Get a joined component value by a given index.

If this Join typically returns all indices in the mask, then iterating over only it or combined with other joins that are also dangerous will cause the JoinIter/ParJoin to go through all indices which is usually not what is wanted and will kill performance. Read more

Important traits for JoinIter<J>

Create a joined iterator over the contents.

Returns a Join-able structure that yields all indices, returning None for all missing elements and Some(T) for found elements. Read more

Auto Trait Implementations

impl<J> Send for MaybeJoin<J> where
    J: Send

impl<J> Sync for MaybeJoin<J> where
    J: Sync