Safe Haskell | None |
---|---|
Language | Haskell2010 |
Primitive operations on StableName
. This differs from the module
StableName
, in that it works in ST
, IO
, and any monad
transformer stack built on top of either. It is recommended that users
read the documentation of StableName
to learn more about
the properties of StableName
s.
Synopsis
- data StableName s a = StableName (StableName# a)
- makeStableName :: PrimMonad m => a -> m (StableName (PrimState m) a)
- eqStableName :: StableName s a -> StableName s b -> Bool
Documentation
data StableName s a Source #
An abstract name for an object. This supports tests for equality, but not hashing.
Instances
Eq (StableName s a) Source # | |
Defined in Data.Primitive.StableName (==) :: StableName s a -> StableName s a -> Bool # (/=) :: StableName s a -> StableName s a -> Bool # |
makeStableName :: PrimMonad m => a -> m (StableName (PrimState m) a) Source #
Make a StableName
for an arbitrary object. The object is not
evaluated.
eqStableName :: StableName s a -> StableName s b -> Bool Source #
Equality on StableName
that does not require that the types of
the arguments match.