118#include "EntityQuery.inl"
QueryExecutor(Predicate &&predicate)
Creates a new query executor.
Predicate mPredicate
The query predicate.
Definition EntityQuery.hpp:79
Generator< const Entity > operator()(EntityManager &entityManager) const noexcept
Executes the query.
QueryExecutor(Predicate &&predicate)
Creates a new query executor.
Generator< const Entity > operator()(EntityManager &entityManager) const noexcept
Executes the query.
Predicate mPredicate
The query predicate.
Definition EntityQuery.hpp:55
Predicate mPredicate
The query predicate.
Definition EntityQuery.hpp:102
QueryExecutor(Predicate &&predicate)
Creates a new query executor.
Generator< const Entity > operator()(EntityManager &entityManager) const noexcept
Executes the query.
The query executor is responsible for iterating over entities and filtering them based on a given pre...
Definition EntityManager.hpp:368
Definition EntityManager.hpp:49
Definition EntityQuery.hpp:16
EntityManager & mEntityManager
The entity manager the query is ran on.
Definition EntityQuery.hpp:23
P Predicate
The query predicate type.
Definition EntityQuery.hpp:19
Generator< const Entity > mGenerator
The generator used to produce the entity output.
Definition EntityQuery.hpp:26
~EntityQuery()=default
Destroys a query.
EntityQuery(EntityManager &entityManager, Predicate &&predicate)
Creates a new entity query instance.
A generator represents a coroutine type that produces a sequence of values of type T,...
Definition Generator.hpp:50
Definition Component.hpp:117
Definition Application.hpp:19
constexpr auto predicate(Callable &&callable) noexcept
Helper function to create a new predicate from a lambda.
Definition Predicate.hpp:390
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25
A predicate implementation that performs a logical AND between other predicates.
Definition Predicate.hpp:59
A predicate that checks if the given entity has all components in Cs.
Definition EntityPredicate.hpp:24
A predicate that checks if the entity has parent as it's parent entity.
Definition EntityPredicate.hpp:60