Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Aztecs.ECS.System.Reader
Synopsis
- type ReaderSystem = ReaderSystemT Identity
- newtype ReaderSystemT m i o = ReaderSystem {
- runReaderSystem :: Components -> (DynamicReaderSystemT m i o, Set ComponentID, Components)
- class Arrow arr => ArrowReaderSystem q arr | arr -> q where
- all :: q i a -> arr i [a]
- filter :: q () a -> QueryFilter -> arr () [a]
- single :: q i a -> arr i a
- class (MonadAccess b m, Arrow arr) => ArrowQueueSystem b m arr | arr -> m where
- queue :: (i -> m ()) -> arr i ()
Documentation
type ReaderSystem = ReaderSystemT Identity Source #
newtype ReaderSystemT m i o Source #
System to process entities.
Constructors
ReaderSystem | |
Fields
|
Instances
class Arrow arr => ArrowReaderSystem q arr | arr -> q where Source #
Methods
all :: q i a -> arr i [a] Source #
Query all matching entities.
filter :: q () a -> QueryFilter -> arr () [a] Source #
Query all matching entities with a QueryFilter
.
single :: q i a -> arr i a Source #
Query a single matching entity. If there are zero or multiple matching entities, an error will be thrown.
Instances
Monad m => ArrowReaderSystem QueryReader (SystemT m) Source # | |
Defined in Aztecs.ECS.System Methods all :: QueryReader i a -> SystemT m i [a] Source # filter :: QueryReader () a -> QueryFilter -> SystemT m () [a] Source # single :: QueryReader i a -> SystemT m i a Source # | |
Monad m => ArrowReaderSystem QueryReader (ReaderSystemT m) Source # | |
Defined in Aztecs.ECS.System.Reader Methods all :: QueryReader i a -> ReaderSystemT m i [a] Source # filter :: QueryReader () a -> QueryFilter -> ReaderSystemT m () [a] Source # single :: QueryReader i a -> ReaderSystemT m i a Source # |
class (MonadAccess b m, Arrow arr) => ArrowQueueSystem b m arr | arr -> m where Source #
Methods
queue :: (i -> m ()) -> arr i () Source #
Queue an Access
to happen after this system schedule.
Instances
ArrowQueueSystem Bundle Access QueueSystem Source # | |
Defined in Aztecs.ECS.System.Queue Methods queue :: (i -> Access ()) -> QueueSystem i () Source # | |
Monad m => ArrowQueueSystem Bundle (AccessT m) (SystemT m) Source # | |
Monad m => ArrowQueueSystem Bundle (AccessT m) (DynamicSystemT m) Source # | |
Defined in Aztecs.ECS.System.Dynamic Methods queue :: (i -> AccessT m ()) -> DynamicSystemT m i () Source # | |
Monad m => ArrowQueueSystem Bundle (AccessT m) (DynamicReaderSystemT m) Source # | |
Defined in Aztecs.ECS.System.Dynamic.Reader Methods queue :: (i -> AccessT m ()) -> DynamicReaderSystemT m i () Source # | |
Monad m => ArrowQueueSystem Bundle (AccessT m) (ReaderSystemT m) Source # | |
Defined in Aztecs.ECS.System.Reader Methods queue :: (i -> AccessT m ()) -> ReaderSystemT m i () Source # |