pub trait ArchetypeFilter: QueryFilter { }
Expand description

A marker trait to indicate that the filter works at an archetype level.

This is needed to implement ExactSizeIterator for QueryIter that contains archetype-level filters.

The trait must only be implemented for filters where its corresponding QueryFilter::IS_ARCHETYPAL is true. As such, only the With and Without filters can implement the trait. Tuples and Or filters are automatically implemented with the trait only if its containing types also implement the same trait.

Added and Changed works with entities, and therefore are not archetypal. As such they do not implement ArchetypeFilter.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl ArchetypeFilter for ()

source§

impl<F0> ArchetypeFilter for (F0,)
where F0: ArchetypeFilter,

source§

impl<F0, F1> ArchetypeFilter for (F0, F1)

source§

impl<F0, F1, F2> ArchetypeFilter for (F0, F1, F2)

source§

impl<F0, F1, F2, F3> ArchetypeFilter for (F0, F1, F2, F3)

source§

impl<F0, F1, F2, F3, F4> ArchetypeFilter for (F0, F1, F2, F3, F4)

source§

impl<F0, F1, F2, F3, F4, F5> ArchetypeFilter for (F0, F1, F2, F3, F4, F5)

source§

impl<F0, F1, F2, F3, F4, F5, F6> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6)

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6, F7)

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6, F7, F8)

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6, F7, F8, F9)

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10)

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11)

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12)

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13)

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14> ArchetypeFilter for (F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14)

Implementors§

source§

impl ArchetypeFilter for Or<()>

source§

impl<F0> ArchetypeFilter for Or<(F0,)>
where F0: ArchetypeFilter,

source§

impl<F0, F1> ArchetypeFilter for Or<(F0, F1)>

source§

impl<F0, F1, F2> ArchetypeFilter for Or<(F0, F1, F2)>

source§

impl<F0, F1, F2, F3> ArchetypeFilter for Or<(F0, F1, F2, F3)>

source§

impl<F0, F1, F2, F3, F4> ArchetypeFilter for Or<(F0, F1, F2, F3, F4)>

source§

impl<F0, F1, F2, F3, F4, F5> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5)>

source§

impl<F0, F1, F2, F3, F4, F5, F6> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6)>

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6, F7)>

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6, F7, F8)>

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6, F7, F8, F9)>

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10)>

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11)>

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12)>

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13)>

source§

impl<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14> ArchetypeFilter for Or<(F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14)>

source§

impl<T> ArchetypeFilter for With<T>
where T: Component,

source§

impl<T> ArchetypeFilter for Without<T>
where T: Component,