Safe Haskell | None |
---|---|
Language | GHC2021 |
Synopsis
- data Uniques (m :: k) a where
- FreshUnique :: forall {k} (m :: k). Uniques m Unique
- freshUnique :: forall (sig :: (Type -> Type) -> Type -> Type) m. Has (Uniques :: (Type -> Type) -> Type -> Type) sig m => m Unique
- newtype UniquesC (m :: Type -> Type) a = UniquesC {
- getUniquesState :: StateC UniqSupply m a
- runUniquesIO :: MonadIO m => Char -> UniquesC m a -> m a
- runUniques :: Functor m => UniqSupply -> UniquesC m a -> m a
Documentation
data Uniques (m :: k) a where Source #
Uniques provides arbitrarily many unique GHC Uniques
FreshUnique :: forall {k} (m :: k). Uniques m Unique |
freshUnique :: forall (sig :: (Type -> Type) -> Type -> Type) m. Has (Uniques :: (Type -> Type) -> Type -> Type) sig m => m Unique Source #
newtype UniquesC (m :: Type -> Type) a Source #
UniquesC | |
|
runUniquesIO :: MonadIO m => Char -> UniquesC m a -> m a Source #
The "mask" (Char) supplied is purely cosmetic, making it easier to figure out where a Unique was born.
See Note [Uniques for wired-in prelude things and known masks] in GHC.Builtin.Uniques
runUniques :: Functor m => UniqSupply -> UniquesC m a -> m a Source #