pituicat/src/Affection/MessageBus/Class.hs
2017-11-27 23:30:11 +01:00

16 lines
407 B
Haskell

{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE AllowAmbiguousTypes #-}
module Affection.MessageBus.Class where
import Affection.MessageBus.Message
import Affection.Types
class (Message msg) => Participant prt msg where
partChannel :: prt -> Channel msg
partInit :: Affection sd msg prt
partListen :: prt -> IO (Maybe msg)
partEmit :: prt -> msg -> IO ()