homepage: https://github.com/lexi-lambda/th-to-exp#readme
changelog-type: ''
hash: e0435947c036b745ff9818353a7386c60c9d931c6cf1032ffe4dbe54e46a7dbe
test-bench-deps:
  base: -any
  hspec: -any
  th-to-exp: -any
  template-haskell: -any
maintainer: Alexis King
synopsis: Provides a way to persist data from compile-time to runtime.
changelog: ''
basic-deps:
  base: ! '>=4.9.0.0 && <5'
  template-haskell: -any
all-versions:
- '0.0.1.0'
author: ''
latest: '0.0.1.0'
description-type: markdown
description: ! '# th-to-exp [![Build Status](https://travis-ci.org/lexi-lambda/th-to-exp.svg?branch=master)](https://travis-ci.org/lexi-lambda/th-to-exp)


  `th-to-exp` is a package that provides a way to persist data from compile-time to
  runtime by producing Template Haskell expressions that evaluate to particular values.
  For example, if you have a value `Just 1`, then `toExp (Just 1)` will produce the
  *expression* `[e| Just 1 |]`, which can be used in a splice. For a more direct example,
  here’s what that looks like without the quasiquote notation:


  ```haskell

  > toExp (Just 1)

  AppE (ConE GHC.Base.Just) (LitE (IntegerL 1))

  ```


  This is done by using a typeclass, `ToExp`, that can be automatically derived for
  types that have a `Generic` instance.

'
license-name: ISC

Update from Hackage at 2016-11-08T00:27:26Z
Update from Hackage at 2016-11-08T00:27:26Z