module Mischief.ECS.Hooks (hook, hookRel) where

import Mischief.ECS.Components.HooksDef
import Mischief.ECS.World

hook :: (HookContext -> System ()) -> Hook a
hook :: forall {k} (a :: k). (HookContext -> System ()) -> Hook a
hook = (HookContext -> System ()) -> Hook a
forall {k} (m :: * -> *) (a :: k).
Typeable m =>
(HookContext -> m ()) -> Hook a
Hook

hookRel :: (HookContextRel -> System ()) -> HookRel a
hookRel :: forall {k} (a :: k). (HookContextRel -> System ()) -> HookRel a
hookRel = (HookContextRel -> System ()) -> HookRel a
forall {k} (m :: * -> *) (a :: k).
Typeable m =>
(HookContextRel -> m ()) -> HookRel a
HookRel