mischief-ecs
Safe HaskellNone
LanguageGHC2024

Mischief.ECS.World.Par

Synopsis

Documentation

par :: MonadSystem w m => [ParSystem ()] -> m () Source #

Receives a list of ParSystems and runs them in parallel. If ran in System, flushes the deferred queue when done!

par' :: MonadSystem w m => [ParSystem ()] -> m () Source #

Receives a list of ParSystems and runs them in parallel. Doesn't flush the deferred queue when done!

parIterList :: (MonadSystem w m, Foldable t) => t a -> ([a] -> ParSystem b) -> m [b] Source #

parFor :: (Foldable t, MonadSystem w m) => t a -> (a -> ParSystem b) -> m [b] Source #

Iterates over a list in parallel. If ran from System, flushes the deferred queue when done.

parFor_ :: Foldable t => t a -> (a -> ParSystem b) -> System () Source #

Iterates over a list in parallel and discards the results. If ran from System, flushes the deffered queue when done.

parFor' :: (MonadSystem w m, Foldable t) => t a -> (a -> ParSystem b) -> m [b] Source #

Iterates over a list in parallel. Doesn't flush the deferred queue when done.

parFor'_ :: (MonadSystem w m, Foldable t) => t a -> (a -> ParSystem b) -> m () Source #

Iterates over a list in parallel and discards the results. Doesn't flush the deffered queue when done.