pub trait QueryItem {
type Iter: Iterator;
// Required methods
fn apply_bitset(&self, bitset: &mut BitSetVec);
fn get_single_with_bitset(
self,
bitset: Rc<BitSetVec>,
) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>;
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter;
}
Expand description
A type representing a component-joining entity query.
Required Associated Types§
Required Methods§
sourcefn apply_bitset(&self, bitset: &mut BitSetVec)
fn apply_bitset(&self, bitset: &mut BitSetVec)
Modify the iteration bitset
sourcefn get_single_with_bitset(
self,
bitset: Rc<BitSetVec>,
) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
Return the item that matches the query within the given bitset if there is exactly one entity that matches this query item.
sourcefn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
Return an iterator over the provided bitset.
Implementations on Foreign Types§
source§impl<A: QueryItem, B: QueryItem, C: QueryItem, D: QueryItem, E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<A: QueryItem, B: QueryItem, C: QueryItem, D: QueryItem, E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<A as QueryItem>::Iter, <B as QueryItem>::Iter, <C as QueryItem>::Iter, <D as QueryItem>::Iter, <E as QueryItem>::Iter, <F as QueryItem>::Iter, <G as QueryItem>::Iter, <H as QueryItem>::Iter, <I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<B: QueryItem, C: QueryItem, D: QueryItem, E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<B: QueryItem, C: QueryItem, D: QueryItem, E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<B as QueryItem>::Iter, <C as QueryItem>::Iter, <D as QueryItem>::Iter, <E as QueryItem>::Iter, <F as QueryItem>::Iter, <G as QueryItem>::Iter, <H as QueryItem>::Iter, <I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<C: QueryItem, D: QueryItem, E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<C: QueryItem, D: QueryItem, E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<C as QueryItem>::Iter, <D as QueryItem>::Iter, <E as QueryItem>::Iter, <F as QueryItem>::Iter, <G as QueryItem>::Iter, <H as QueryItem>::Iter, <I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<D: QueryItem, E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<D: QueryItem, E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<D as QueryItem>::Iter, <E as QueryItem>::Iter, <F as QueryItem>::Iter, <G as QueryItem>::Iter, <H as QueryItem>::Iter, <I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<E: QueryItem, F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<E as QueryItem>::Iter, <F as QueryItem>::Iter, <G as QueryItem>::Iter, <H as QueryItem>::Iter, <I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<F: QueryItem, G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<F as QueryItem>::Iter, <G as QueryItem>::Iter, <H as QueryItem>::Iter, <I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<G: QueryItem, H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<G as QueryItem>::Iter, <H as QueryItem>::Iter, <I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<H: QueryItem, I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<H as QueryItem>::Iter, <I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<I: QueryItem, J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<I as QueryItem>::Iter, <J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<J: QueryItem, K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<J as QueryItem>::Iter, <K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<K: QueryItem, L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<K as QueryItem>::Iter, <L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<L: QueryItem, M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<L as QueryItem>::Iter, <M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<M: QueryItem, N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<M as QueryItem>::Iter, <N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<N: QueryItem, O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (N, O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<N as QueryItem>::Iter, <O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (O, P, Q, R, S, T, U, V, W, X, Y, Z)
impl<O: QueryItem, P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (O, P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<O as QueryItem>::Iter, <P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (P, Q, R, S, T, U, V, W, X, Y, Z)
impl<P: QueryItem, Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (P, Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<P as QueryItem>::Iter, <Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (Q, R, S, T, U, V, W, X, Y, Z)
impl<Q: QueryItem, R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (Q, R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<Q as QueryItem>::Iter, <R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (R, S, T, U, V, W, X, Y, Z)
impl<R: QueryItem, S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (R, S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<R as QueryItem>::Iter, <S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (S, T, U, V, W, X, Y, Z)
impl<S: QueryItem, T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (S, T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<S as QueryItem>::Iter, <T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (T, U, V, W, X, Y, Z)
impl<T: QueryItem, U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (T, U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<T as QueryItem>::Iter, <U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (U, V, W, X, Y, Z)
impl<U: QueryItem, V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (U, V, W, X, Y, Z)
type Iter = MultiQueryIter<(<U as QueryItem>::Iter, <V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (V, W, X, Y, Z)
impl<V: QueryItem, W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (V, W, X, Y, Z)
type Iter = MultiQueryIter<(<V as QueryItem>::Iter, <W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (W, X, Y, Z)
impl<W: QueryItem, X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (W, X, Y, Z)
type Iter = MultiQueryIter<(<W as QueryItem>::Iter, <X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (X, Y, Z)
impl<X: QueryItem, Y: QueryItem, Z: QueryItem> QueryItem for (X, Y, Z)
type Iter = MultiQueryIter<(<X as QueryItem>::Iter, <Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<Y: QueryItem, Z: QueryItem> QueryItem for (Y, Z)
impl<Y: QueryItem, Z: QueryItem> QueryItem for (Y, Z)
type Iter = MultiQueryIter<(<Y as QueryItem>::Iter, <Z as QueryItem>::Iter)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
source§impl<Z: QueryItem> QueryItem for (Z,)
impl<Z: QueryItem> QueryItem for (Z,)
type Iter = MultiQueryIter<(<Z as QueryItem>::Iter,)>
fn apply_bitset(&self, bitset: &mut BitSetVec)
fn get_single_with_bitset( self, bitset: Rc<BitSetVec>, ) -> Result<<Self::Iter as Iterator>::Item, QuerySingleError>
fn iter_with_bitset(self, bitset: Rc<BitSetVec>) -> Self::Iter
Implementors§
source§impl<'a> QueryItem for &'a Ref<'a, UntypedComponentStore>
impl<'a> QueryItem for &'a Ref<'a, UntypedComponentStore>
type Iter = UntypedComponentBitsetIterator<'a>
source§impl<'a, 'q, T: HasSchema> QueryItem for &'a mut CompMut<'q, T>
impl<'a, 'q, T: HasSchema> QueryItem for &'a mut CompMut<'q, T>
type Iter = Map<UntypedComponentBitsetIteratorMut<'a>, for<'b> fn(_: SchemaRefMut<'b>) -> &'b mut T>
source§impl<'a, T: HasSchema, S, C> QueryItem for &'a OptionalQueryItem<'a, T, S>where
C: ComponentIterBitset<'a, T> + 'a,
S: Deref<Target = C> + 'a,
impl<'a, T: HasSchema, S, C> QueryItem for &'a OptionalQueryItem<'a, T, S>where
C: ComponentIterBitset<'a, T> + 'a,
S: Deref<Target = C> + 'a,
Immutably iterate over optional component with syntax: &Optional(&Comp<T>)
/ &Optional(&CompMut<T>)
.
(For mutable optional iteration we require &mut OptionalMut(&mut CompMut<T>)
)
source§impl<'a, T: HasSchema, S, C> QueryItem for &'a mut OptionalQueryItemMut<'a, T, S>where
C: ComponentIterBitset<'a, T> + 'a,
S: DerefMut<Target = C> + 'a,
impl<'a, T: HasSchema, S, C> QueryItem for &'a mut OptionalQueryItemMut<'a, T, S>where
C: ComponentIterBitset<'a, T> + 'a,
S: DerefMut<Target = C> + 'a,
Mutably iterate over optional component with syntax: &mut OptionalMut(&mut RefMut<ComponentStore<T>>)