module PrioritySync.Internal.Constrained
(Constrained(..))
where
import PrioritySync.Internal.UserData
import PrioritySync.Internal.RoomGroup
import PrioritySync.Internal.ClaimContext
import PrioritySync.Internal.Room
import PrioritySync.Internal.RoomConstraint
data Constrained u = Constrained
type instance UserData (Constrained u) = u
instance RoomGroup (Constrained u) where
roomsOf = const []
instance (RoomConstraint u) => ClaimContext (Constrained u) where
type ClaimHandle (Constrained u) = ()
approveClaimsEntering _ cs = approveClaims cs >> return ()
approveClaimsExiting _ cs = approveClaims cs >> return ()
waitingAction _ () = return ()