{-# LANGUAGE DeriveGeneric #-}
module Aztecs.ECS.World.Entities.Internal (Entities (..)) where
import Aztecs.ECS.Entity (EntityID)
import Aztecs.ECS.World.Archetypes.Internal (ArchetypeID, Archetypes)
import Aztecs.ECS.World.Components.Internal (Components)
import Data.Map (Map)
import GHC.Generics
data Entities m = Entities
{
forall (m :: * -> *). Entities m -> Archetypes m
archetypes :: !(Archetypes m),
forall (m :: * -> *). Entities m -> Components
components :: !Components,
forall (m :: * -> *). Entities m -> Map EntityID ArchetypeID
entities :: !(Map EntityID ArchetypeID)
}
deriving (Int -> Entities m -> ShowS
[Entities m] -> ShowS
Entities m -> String
(Int -> Entities m -> ShowS)
-> (Entities m -> String)
-> ([Entities m] -> ShowS)
-> Show (Entities m)
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
forall (m :: * -> *). Int -> Entities m -> ShowS
forall (m :: * -> *). [Entities m] -> ShowS
forall (m :: * -> *). Entities m -> String
$cshowsPrec :: forall (m :: * -> *). Int -> Entities m -> ShowS
showsPrec :: Int -> Entities m -> ShowS
$cshow :: forall (m :: * -> *). Entities m -> String
show :: Entities m -> String
$cshowList :: forall (m :: * -> *). [Entities m] -> ShowS
showList :: [Entities m] -> ShowS
Show, (forall x. Entities m -> Rep (Entities m) x)
-> (forall x. Rep (Entities m) x -> Entities m)
-> Generic (Entities m)
forall x. Rep (Entities m) x -> Entities m
forall x. Entities m -> Rep (Entities m) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (m :: * -> *) x. Rep (Entities m) x -> Entities m
forall (m :: * -> *) x. Entities m -> Rep (Entities m) x
$cfrom :: forall (m :: * -> *) x. Entities m -> Rep (Entities m) x
from :: forall x. Entities m -> Rep (Entities m) x
$cto :: forall (m :: * -> *) x. Rep (Entities m) x -> Entities m
to :: forall x. Rep (Entities m) x -> Entities m
Generic)