module Mischief.ECS.Observers where import Mischief.ECS.Entities import Mischief.ECS.EventDef import Mischief.ECS.Observer import Mischief.ECS.World import Mischief.ECS.World.Spawn qualified spawn :: (Event e) => (e -> System ()) -> System Entity spawn :: forall e. Event e => (e -> System ()) -> System Entity spawn e -> System () x = Observer e -> System Entity forall b. (HasCallStack, Bundle b) => b -> System Entity Mischief.ECS.World.Spawn.spawn (Observer e -> System Entity) -> Observer e -> System Entity forall a b. (a -> b) -> a -> b $ (e -> System ()) -> Observer e forall e. (e -> System ()) -> Observer e Observer e -> System () x