aztecs-0.8.0: A modular game engine and Entity-Component-System (ECS) for Haskell.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Aztecs.ECS.Query.Dynamic.Reader

Synopsis

Dynamic queries

newtype DynamicQueryReader i o Source #

Dynamic query for components by ID.

Constructors

DynamicQueryReader 

Fields

Instances

Instances details
ArrowDynamicQueryReader DynamicQueryReader Source # 
Instance details

Defined in Aztecs.ECS.Query.Dynamic.Reader

Arrow DynamicQueryReader Source # 
Instance details

Defined in Aztecs.ECS.Query.Dynamic.Reader

Methods

arr :: (b -> c) -> DynamicQueryReader b c #

first :: DynamicQueryReader b c -> DynamicQueryReader (b, d) (c, d) #

second :: DynamicQueryReader b c -> DynamicQueryReader (d, b) (d, c) #

(***) :: DynamicQueryReader b c -> DynamicQueryReader b' c' -> DynamicQueryReader (b, b') (c, c') #

(&&&) :: DynamicQueryReader b c -> DynamicQueryReader b c' -> DynamicQueryReader b (c, c') #

ArrowChoice DynamicQueryReader Source # 
Instance details

Defined in Aztecs.ECS.Query.Dynamic.Reader

Category DynamicQueryReader Source # 
Instance details

Defined in Aztecs.ECS.Query.Dynamic.Reader

Methods

id :: forall (a :: k). DynamicQueryReader a a #

(.) :: forall (b :: k) (c :: k) (a :: k). DynamicQueryReader b c -> DynamicQueryReader a b -> DynamicQueryReader a c #

Monad m => ArrowDynamicReaderSystem DynamicQueryReader (DynamicSystemT m) Source # 
Instance details

Defined in Aztecs.ECS.System.Dynamic

Monad m => ArrowDynamicReaderSystem DynamicQueryReader (DynamicReaderSystemT m) Source # 
Instance details

Defined in Aztecs.ECS.System.Dynamic.Reader

Applicative (DynamicQueryReader i) Source # 
Instance details

Defined in Aztecs.ECS.Query.Dynamic.Reader

Functor (DynamicQueryReader i) Source # 
Instance details

Defined in Aztecs.ECS.Query.Dynamic.Reader

Methods

fmap :: (a -> b) -> DynamicQueryReader i a -> DynamicQueryReader i b #

(<$) :: a -> DynamicQueryReader i b -> DynamicQueryReader i a #

class Arrow arr => ArrowDynamicQueryReader arr where Source #

Minimal complete definition

entity, fetchDyn

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.

Running

allDyn :: Set ComponentID -> i -> DynamicQueryReader i a -> Entities -> [a] Source #

Match all entities.

Dynamic query filters