hslua-aeson: Allow aeson data types to be used with lua.

[ foreign, library, mit ] [ Propose Tags ]

This package provides instances to push and receive any datatype encodable as JSON to and from the Lua stack.

[Skip to Readme]
Versions [faq],,,,, 0.3.0,,, 1.0.0, 1.0.1, 1.0.2, 1.0.3,
Change log changelog.md
Dependencies aeson (>=0.11 && <1.6), base (>=4.7 && <5), hashable (>=1.2 && <1.4), hslua (>=1.0 && <1.1.1 || >=1.1.2 && <1.4), scientific (==0.3.*), text (>= && <1.3), unordered-containers (==0.2.*), vector (>=0.7) [details]
License MIT
Copyright © 2017–2020 Albert Krewinkel
Author Albert Krewinkel
Maintainer tarleb+hslua@zeitkraut.de
Category Foreign
Home page https://github.com/tarleb/hslua-aeson#readme
Source repo head: git clone https://github.com/hslua/hslua-aeson
Uploaded by tarleb at 2020-10-16T18:51:33Z
Distributions LTSHaskell:1.0.0, NixOS:, Stackage:1.0.0
Downloads 5676 total (9 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2020-10-16 [all 1 reports]


[Index] [Quick Jump]


Maintainer's Corner

For package maintainers and hackage trustees

Readme for hslua-aeson-

[back to package description]


travis build status MIT License

Glue to hslua for aeson values.

This provides a StackValue instance for aeson's Value type. The following conventions are used:

  • Null values are encoded as a special value (stored in the registry field HSLUA_AESON_NULL). Using nil would cause problems with null-containing arrays.

  • Objects are converted to tables in a straight-forward way.

  • Arrays are converted to Lua tables. Array-length is included as the value at index 0. This makes it possible to distinguish between empty arrays and empty objects.

  • JSON numbers are converted to Lua numbers (usually doubles), which can cause a loss of precision.


This project is licensed under the liberal MIT license, the same license under which hslua and lua itself are published. See the LICENSE file for details.