aztecs-0.14.0: A modular game engine and Entity-Component-System (ECS) for Haskell.
Safe HaskellNone
LanguageHaskell2010

Aztecs.World

Documentation

data World (m :: Type -> Type) (cs :: [Type]) Source #

Constructors

World 

Fields

type family WorldComponents (m :: Type -> Type) (cs :: [Type]) :: [Type] where ... Source #

Equations

WorldComponents m ('[] :: [Type]) = '[] :: [Type] 
WorldComponents m (c ': cs) = ComponentStorage m c c ': WorldComponents m cs 

empty :: forall m (cs :: [Type]). (Monad m, Empty m (HSet (WorldComponents m cs))) => m (World m cs) Source #

removeComponent :: forall m (cs :: [Type]) c. (AdjustM m (ComponentStorage m c c) (WorldComponents m cs), PrimMonad m, Component m c, Entity m ~ Entity, Typeable c, Storage m (ComponentStorage m c)) => Entity -> World m cs -> m (World m cs) Source #

removeComponent' :: forall m c (cs :: [Type]). (AdjustM m (SparseStorage m c) cs, PrimMonad m) => Entity -> HSet cs -> m (HSet cs) Source #

remove :: forall m (cs :: [Type]). Monad m => Entity -> World m cs -> m (World m cs) Source #