module Fudget(
module Fudget,SP,
FRequest,FResponse,
Message(..),Path(..),Direction) where
import FRequest(FRequest,FResponse)
import Message(Message(..))
import Direction(Direction)
import Path(Path(..))
import SP(SP)
type TEvent = (Path, FResponse)
type TCommand = (Path, FRequest)
type Fa a b c d = SP (Message a c) (Message b d)
type FEvent a = Message TEvent a
type KEvent a = Message FResponse a
type FCommand a = Message TCommand a
type KCommand a = Message FRequest a
type Fudget a b = F a b
type FSP hi ho = SP (FEvent hi) (FCommand ho)
type KSP hi ho = SP (KEvent hi) (KCommand ho)
newtype F hi ho = F (FSP hi ho)
newtype K hi ho = K (KSP hi ho)
kk :: KSP hi ho -> K hi ho
kk=KSP hi ho -> K hi ho
forall hi ho. KSP hi ho -> K hi ho
K
ff :: FSP hi ho -> F hi ho
ff=FSP hi ho -> F hi ho
forall hi ho. FSP hi ho -> F hi ho
F
unK :: K hi ho -> KSP hi ho
unK (K KSP hi ho
sp) = KSP hi ho
sp
unF :: F hi ho -> FSP hi ho
unF (F FSP hi ho
sp) = FSP hi ho
sp