aztecs-0.7.0: src/Aztecs/ECS/System/Queue/Class.hs
{-# LANGUAGE FunctionalDependencies #-}
module Aztecs.ECS.System.Queue.Class (ArrowQueueSystem (..)) where
import Aztecs.ECS.Access (MonadAccess)
import Control.Arrow (Arrow (..))
class (MonadAccess b m, Arrow arr) => ArrowQueueSystem b m arr | arr -> m where
-- | Queue an `Access` to happen after this system schedule.
queue :: (i -> m ()) -> arr i ()