Trait oxygengine::prelude::Query

pub trait Query {
    type Item<'a>;
}
Expand description

A collection of component types to fetch from a World

The interface of this trait is a private implementation detail.

Required Associated Types§

type Item<'a>

Type of results yielded by the query

This is usually the same type as the query itself, except with an appropriate lifetime.

Implementations on Foreign Types§

§

impl<'a, T> Query for &'a Twhere T: Component,

§

type Item<'q> = &'q T

§

impl<N, M, L, K, J, I, H, G, F, E, D, C, B, A> Query for (N, M, L, K, J, I, H, G, F, E, D, C, B, A)where N: Query, M: Query, L: Query, K: Query, J: Query, I: Query, H: Query, G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<N as Query>::Item<'q>, <M as Query>::Item<'q>, <L as Query>::Item<'q>, <K as Query>::Item<'q>, <J as Query>::Item<'q>, <I as Query>::Item<'q>, <H as Query>::Item<'q>, <G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<J, I, H, G, F, E, D, C, B, A> Query for (J, I, H, G, F, E, D, C, B, A)where J: Query, I: Query, H: Query, G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<J as Query>::Item<'q>, <I as Query>::Item<'q>, <H as Query>::Item<'q>, <G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<I, H, G, F, E, D, C, B, A> Query for (I, H, G, F, E, D, C, B, A)where I: Query, H: Query, G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<I as Query>::Item<'q>, <H as Query>::Item<'q>, <G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<L, K, J, I, H, G, F, E, D, C, B, A> Query for (L, K, J, I, H, G, F, E, D, C, B, A)where L: Query, K: Query, J: Query, I: Query, H: Query, G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<L as Query>::Item<'q>, <K as Query>::Item<'q>, <J as Query>::Item<'q>, <I as Query>::Item<'q>, <H as Query>::Item<'q>, <G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<T> Query for Option<T>where T: Query,

§

type Item<'q> = Option<<T as Query>::Item<'q>>

§

impl<G, F, E, D, C, B, A> Query for (G, F, E, D, C, B, A)where G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl Query for ()

§

type Item<'q> = ()

§

impl<A> Query for (A,)where A: Query,

§

type Item<'q> = (<A as Query>::Item<'q>,)

§

impl<K, J, I, H, G, F, E, D, C, B, A> Query for (K, J, I, H, G, F, E, D, C, B, A)where K: Query, J: Query, I: Query, H: Query, G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<K as Query>::Item<'q>, <J as Query>::Item<'q>, <I as Query>::Item<'q>, <H as Query>::Item<'q>, <G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<E, D, C, B, A> Query for (E, D, C, B, A)where E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<C, B, A> Query for (C, B, A)where C: Query, B: Query, A: Query,

§

type Item<'q> = (<C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<M, L, K, J, I, H, G, F, E, D, C, B, A> Query for (M, L, K, J, I, H, G, F, E, D, C, B, A)where M: Query, L: Query, K: Query, J: Query, I: Query, H: Query, G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<M as Query>::Item<'q>, <L as Query>::Item<'q>, <K as Query>::Item<'q>, <J as Query>::Item<'q>, <I as Query>::Item<'q>, <H as Query>::Item<'q>, <G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<D, C, B, A> Query for (D, C, B, A)where D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<B, A> Query for (B, A)where B: Query, A: Query,

§

type Item<'q> = (<B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<'a, T> Query for &'a mut Twhere T: Component,

§

type Item<'q> = &'q mut T

§

impl<F, E, D, C, B, A> Query for (F, E, D, C, B, A)where F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<O, N, M, L, K, J, I, H, G, F, E, D, C, B, A> Query for (O, N, M, L, K, J, I, H, G, F, E, D, C, B, A)where O: Query, N: Query, M: Query, L: Query, K: Query, J: Query, I: Query, H: Query, G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<O as Query>::Item<'q>, <N as Query>::Item<'q>, <M as Query>::Item<'q>, <L as Query>::Item<'q>, <K as Query>::Item<'q>, <J as Query>::Item<'q>, <I as Query>::Item<'q>, <H as Query>::Item<'q>, <G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

§

impl<H, G, F, E, D, C, B, A> Query for (H, G, F, E, D, C, B, A)where H: Query, G: Query, F: Query, E: Query, D: Query, C: Query, B: Query, A: Query,

§

type Item<'q> = (<H as Query>::Item<'q>, <G as Query>::Item<'q>, <F as Query>::Item<'q>, <E as Query>::Item<'q>, <D as Query>::Item<'q>, <C as Query>::Item<'q>, <B as Query>::Item<'q>, <A as Query>::Item<'q>)

Implementors§

§

impl<L, R> Query for Or<L, R>where L: Query, R: Query,

§

type Item<'q> = Or<<L as Query>::Item<'q>, <R as Query>::Item<'q>>

§

impl<Q> Query for Satisfies<Q>where Q: Query,

§

type Item<'q> = bool

§

impl<Q, R> Query for With<Q, R>where Q: Query, R: Query,

§

type Item<'q> = <Q as Query>::Item<'q>

§

impl<Q, R> Query for Without<Q, R>where Q: Query, R: Query,

§

type Item<'q> = <Q as Query>::Item<'q>