Copyright | (c) 2021 Xy Ren |
---|---|
License | BSD3 |
Maintainer | xy.r@outlook.com |
Stability | unstable |
Portability | non-portable (GHC only) |
Safe Haskell | None |
Language | Haskell2010 |
Cleff.Internal
Description
This module contains common definitions for the cleff
internals.
This is an internal module and its API may change even between minor versions. Therefore you should be extra careful if you're to depend on this module.
Basic types
newtype HandlerPtr (e :: Effect) Source #
A pointer to an effect handler.
Constructors
HandlerPtr | |
Fields
|
The Any
type
type family Any :: k where ... #
The type constructor Any
is type to which you can unsafely coerce any
lifted type, and back. More concretely, for a lifted type t
and
value x :: t
, -- unsafeCoerce (unsafeCoerce x :: Any) :: t
is equivalent
to x
.
pattern Any :: forall a. a -> Any Source #
A pattern synonym for coercing values to and from Any
. This is not any less unsafe but prevents possivle
misuses.