Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Aztecs.ECS.Query.Reader
Synopsis
- newtype QueryReader i o = QueryReader {
- runQueryReader :: Components -> (Set ComponentID, Components, DynamicQueryReader i o)
- class Arrow arr => ArrowQueryReader arr where
- fetch :: Component a => arr () a
- fetchMaybe :: Component a => arr () (Maybe a)
- class Arrow arr => ArrowDynamicQueryReader arr where
- entity :: arr () EntityID
- fetchDyn :: Component a => ComponentID -> arr () a
- fetchMaybeDyn :: Component a => ComponentID -> arr () (Maybe a)
- all :: i -> QueryReader i a -> Entities -> ([a], Entities)
- all' :: i -> QueryReader i a -> Entities -> ([a], Components)
- newtype QueryFilter = QueryFilter {}
- with :: forall a. Component a => QueryFilter
- without :: forall a. Component a => QueryFilter
- data DynamicQueryFilter = DynamicQueryFilter {
- filterWith :: !(Set ComponentID)
- filterWithout :: !(Set ComponentID)
Queries
newtype QueryReader i o Source #
Query to read from entities.
Constructors
QueryReader | |
Fields
|
Instances
class Arrow arr => ArrowQueryReader arr where Source #
Arrow for queries that can read from entities.
Minimal complete definition
Methods
fetch :: Component a => arr () a Source #
Fetch a Component
by its type.
fetchMaybe :: Component a => arr () (Maybe a) Source #
Instances
ArrowQueryReader Query Source # | |
ArrowQueryReader QueryReader Source # | |
Defined in Aztecs.ECS.Query.Reader Methods fetch :: Component a => QueryReader () a Source # fetchMaybe :: Component a => QueryReader () (Maybe a) Source # |
class Arrow arr => ArrowDynamicQueryReader arr where Source #
Methods
entity :: arr () EntityID Source #
Fetch the currently matched EntityID
.
fetchDyn :: Component a => ComponentID -> arr () a Source #
Fetch a Component
by its ComponentID
.
fetchMaybeDyn :: Component a => ComponentID -> arr () (Maybe a) Source #
Try to fetch a Component
by its ComponentID
.
Instances
ArrowDynamicQueryReader Query Source # | |
Defined in Aztecs.ECS.Query | |
ArrowDynamicQueryReader DynamicQuery Source # | |
Defined in Aztecs.ECS.Query.Dynamic Methods entity :: DynamicQuery () EntityID Source # fetchDyn :: Component a => ComponentID -> DynamicQuery () a Source # fetchMaybeDyn :: Component a => ComponentID -> DynamicQuery () (Maybe a) Source # | |
ArrowDynamicQueryReader DynamicQueryReader Source # | |
Defined in Aztecs.ECS.Query.Dynamic.Reader Methods entity :: DynamicQueryReader () EntityID Source # fetchDyn :: Component a => ComponentID -> DynamicQueryReader () a Source # fetchMaybeDyn :: Component a => ComponentID -> DynamicQueryReader () (Maybe a) Source # | |
ArrowDynamicQueryReader QueryReader Source # | |
Defined in Aztecs.ECS.Query.Reader Methods entity :: QueryReader () EntityID Source # fetchDyn :: Component a => ComponentID -> QueryReader () a Source # fetchMaybeDyn :: Component a => ComponentID -> QueryReader () (Maybe a) Source # |
Running
all' :: i -> QueryReader i a -> Entities -> ([a], Components) Source #
Match all entities.
Filters
newtype QueryFilter Source #
Filter for a Query
.
Constructors
QueryFilter | |
Fields |
Instances
Monoid QueryFilter Source # | |
Defined in Aztecs.ECS.Query.Reader Methods mempty :: QueryFilter # mappend :: QueryFilter -> QueryFilter -> QueryFilter # mconcat :: [QueryFilter] -> QueryFilter # | |
Semigroup QueryFilter Source # | |
Defined in Aztecs.ECS.Query.Reader Methods (<>) :: QueryFilter -> QueryFilter -> QueryFilter # sconcat :: NonEmpty QueryFilter -> QueryFilter # stimes :: Integral b => b -> QueryFilter -> QueryFilter # |
with :: forall a. Component a => QueryFilter Source #
Filter for entities containing this component.
without :: forall a. Component a => QueryFilter Source #
Filter out entities containing this component.
data DynamicQueryFilter Source #
Constructors
DynamicQueryFilter | |
Fields
|
Instances
Monoid DynamicQueryFilter Source # | |
Defined in Aztecs.ECS.Query.Dynamic.Reader Methods mempty :: DynamicQueryFilter # mappend :: DynamicQueryFilter -> DynamicQueryFilter -> DynamicQueryFilter # mconcat :: [DynamicQueryFilter] -> DynamicQueryFilter # | |
Semigroup DynamicQueryFilter Source # | |
Defined in Aztecs.ECS.Query.Dynamic.Reader Methods (<>) :: DynamicQueryFilter -> DynamicQueryFilter -> DynamicQueryFilter # sconcat :: NonEmpty DynamicQueryFilter -> DynamicQueryFilter # stimes :: Integral b => b -> DynamicQueryFilter -> DynamicQueryFilter # |