aztecs-0.1.0.1: A type-safe and friendly ECS for Haskell
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Aztecs.Task

Synopsis

Documentation

newtype Task m s a Source #

System task.

Constructors

Task (StateT (s, [Command m ()], World) m a) 

Instances

Instances details
MonadIO m => MonadIO (Task m s) Source # 
Instance details

Defined in Data.Aztecs.Task

Methods

liftIO :: IO a -> Task m s a #

Monad m => Applicative (Task m s) Source # 
Instance details

Defined in Data.Aztecs.Task

Methods

pure :: a -> Task m s a #

(<*>) :: Task m s (a -> b) -> Task m s a -> Task m s b #

liftA2 :: (a -> b -> c) -> Task m s a -> Task m s b -> Task m s c #

(*>) :: Task m s a -> Task m s b -> Task m s b #

(<*) :: Task m s a -> Task m s b -> Task m s a #

Functor m => Functor (Task m s) Source # 
Instance details

Defined in Data.Aztecs.Task

Methods

fmap :: (a -> b) -> Task m s a -> Task m s b #

(<$) :: a -> Task m s b -> Task m s a #

Monad m => Monad (Task m s) Source # 
Instance details

Defined in Data.Aztecs.Task

Methods

(>>=) :: Task m s a -> (a -> Task m s b) -> Task m s b #

(>>) :: Task m s a -> Task m s b -> Task m s b #

return :: a -> Task m s a #

command :: Monad m => Command m () -> Task m a () Source #

Queue a Command to run after this system is complete.

runTask :: Functor m => Task m s a -> s -> World -> m (a, s, [Command m ()], World) Source #