purescript-bridge: Generate PureScript data types from Haskell data types

[ bsd3, library, web ] [ Propose Tags ]

Modules

[Last Documentation]

  • Language
    • PureScript
      • Language.PureScript.Bridge
        • Language.PureScript.Bridge.Builder
        • Language.PureScript.Bridge.PSTypes
        • Language.PureScript.Bridge.Primitives
        • Language.PureScript.Bridge.Printer
        • Language.PureScript.Bridge.SumType
        • Language.PureScript.Bridge.Tuple
        • Language.PureScript.Bridge.TypeInfo
        • Language.PureScript.Bridge.TypeParameters

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.3.0.0, 0.3.0.2, 0.3.0.3, 0.3.0.4, 0.3.0.5, 0.3.0.6, 0.3.1.0, 0.3.1.1, 0.3.2.0, 0.4.0.0, 0.6.0.0, 0.6.0.1, 0.6.0.2, 0.7.0.0, 0.7.0.1, 0.8.0.0, 0.8.0.1, 0.9.0.0, 0.10.0.0, 0.10.1.0, 0.11.0.0, 0.11.1.0, 0.11.1.1, 0.11.1.2, 0.12.0.0, 0.13.0.0, 0.14.0.0, 0.15.0.0
Dependencies base (>=4.8 && <4.9), containers, directory, filepath, generic-deriving, lens, mtl, text, transformers [details]
License BSD-3-Clause
Author Robert Klotzner
Maintainer robert.klotzner@gmx.at
Category Web
Source repo head: git clone https://github.com/eskimor/purescript-bridge.git
Uploaded by eskimo at 2016-06-06T06:03:17Z
Distributions LTSHaskell:0.15.0.0, NixOS:0.15.0.0, Stackage:0.15.0.0
Reverse Dependencies 1 direct, 1 indirect [details]
Downloads 20774 total (73 in the last 30 days)
Rating 1.25 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-11-24 [all 2 reports]

Readme for purescript-bridge-0.6.0.0

[back to package description]

purescript-bridge

Build Status

Translate your Haskell types to PureScript types. It should in theory work for almost all Haskell types, including type constructors! You just have to instantiate it with dummy parameters from e.g. "Language.PureScript.Bridge.TypeParameters".

Data type translation is fully and easily customizable by providing your own BridgePart instances!

JSON encoding / decoding

For compatible JSON representations you should be using aeson's generic encoding/decoding with default options and gAesonEncodeJson and gAesonDecodeJson from the purescript-argonaut-codecs package, (Data.Argonaut.Aeson).

At the time of this writing the PR providing Data.Argonaut.Aeson was not yet merged. In the meantime, you can find the PR here.

Documentation

Usage of this library is documented in Language.Purescript.Bridge.

All you should need to get started is: writePSTypes.

Status

This library is at a quite early stage. It works for my use case at the moment and I will fix bugs when they come along. Also PRs for more PSTypes definitions and bridges are very welcome!

Expect bugs - especially for more advanced use cases. Although I have tested the most advanced one already with no issues, bugs always creep in.