| 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.