License | BSD-3-Clause |
---|---|
Maintainer | Jamie Willis |
Stability | experimental |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
This module contains some Template Haskell related functions for manipulating template haskell as a lower, combinator-based, level.
Since: 2.3.0.0
Synopsis
- eta :: Code a -> Code a
- unsafeCodeCoerce :: forall (r :: RuntimeRep) (a :: TYPE r) m. Quote m => m Exp -> Code m a
- unTypeCode :: forall (r :: RuntimeRep) (a :: TYPE r) m. Quote m => Code m a -> m Exp
Documentation
eta :: Code a -> Code a Source #
Given a function (of arbitrarily many arguments, but it must at least have 1), eta-reduces it to remove redundant arguments.
Since: 2.3.0.0
unsafeCodeCoerce :: forall (r :: RuntimeRep) (a :: TYPE r) m. Quote m => m Exp -> Code m a #
Unsafely convert an untyped code representation into a typed code representation.
unTypeCode :: forall (r :: RuntimeRep) (a :: TYPE r) m. Quote m => Code m a -> m Exp #
Extract the untyped representation from the typed representation