| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
Control.Monad.Class.MonadUnique
Description
A generalisation of the
Data.Unique
API to both IO and IOSim.
Documentation
class (Monad m, Eq (Unique m), Ord (Unique m)) => MonadUnique (m :: Type -> Type) where Source #
Minimal complete definition
Nothing
Methods
newUnique :: m (Unique m) Source #
default newUnique :: forall (t :: (Type -> Type) -> Type -> Type) (n :: Type -> Type). (m ~ t n, Unique m ~ UniqueFor t n, MonadTrans t, MonadUnique n) => m (Unique m) Source #
hashUnique :: Unique m -> Int Source #
Instances
| MonadUnique IO Source # | |
| MonadUnique m => MonadUnique (ReaderT r m) Source # | |
newtype UniqueFor (t :: (Type -> Type) -> Type -> Type) (m :: Type -> Type) Source #
Constructors
| MkUniqueFor | |
Fields
| |
Instances
| MonadUnique m => Eq (UniqueFor r m) Source # | |
| MonadUnique m => Ord (UniqueFor r m) Source # | |
Defined in Control.Monad.Class.MonadUnique Methods compare :: UniqueFor r m -> UniqueFor r m -> Ordering # (<) :: UniqueFor r m -> UniqueFor r m -> Bool # (<=) :: UniqueFor r m -> UniqueFor r m -> Bool # (>) :: UniqueFor r m -> UniqueFor r m -> Bool # (>=) :: UniqueFor r m -> UniqueFor r m -> Bool # | |