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

Data.Aztecs.Schedule

Documentation

data Node m where Source #

Constructors

Node :: System m a => Proxy a -> Cache -> Node m 

data Schedule m Source #

Constructors

Schedule (Map TypeRep (ScheduleNode m)) 

Instances

Instances details
Monoid (Schedule m) Source # 
Instance details

Defined in Data.Aztecs.Schedule

Methods

mempty :: Schedule m #

mappend :: Schedule m -> Schedule m -> Schedule m #

mconcat :: [Schedule m] -> Schedule m #

Semigroup (Schedule m) Source # 
Instance details

Defined in Data.Aztecs.Schedule

Methods

(<>) :: Schedule m -> Schedule m -> Schedule m #

sconcat :: NonEmpty (Schedule m) -> Schedule m #

stimes :: Integral b => b -> Schedule m -> Schedule m #

data ScheduleNode m Source #

Constructors

ScheduleNode (Node m) [Constraint] 

runSchedule :: [[GraphNode IO]] -> World -> IO ([[GraphNode IO]], World) Source #

before :: forall m a. System m a => Constraint Source #

after :: forall m a. System m a => Constraint Source #

newtype Scheduler m Source #

Constructors

Scheduler (Map TypeRep (Schedule m)) 

Instances

Instances details
Monoid (Scheduler m) Source # 
Instance details

Defined in Data.Aztecs.Schedule

Semigroup (Scheduler m) Source # 
Instance details

Defined in Data.Aztecs.Schedule

Methods

(<>) :: Scheduler m -> Scheduler m -> Scheduler m #

sconcat :: NonEmpty (Scheduler m) -> Scheduler m #

stimes :: Integral b => b -> Scheduler m -> Scheduler m #

schedule :: forall l m s. (Typeable l, System m s) => [Constraint] -> Scheduler m Source #

newtype SchedulerGraph m Source #

Constructors

SchedulerGraph (Map TypeRep [[GraphNode m]])