json-bytes-builder-0.5: Direct-to-bytes JSON Builder

Safe HaskellNone
LanguageHaskell2010

JSONBytesBuilder.Builder

Contents

Description

DSL for construction of JSON.

Synopsis

Literal builders

data Literal Source

Builder of any JSON literal.

null :: Literal Source

JSON Null literal.

boolean :: Bool -> Literal Source

JSON Boolean literal from Bool.

numberFromInt :: Int -> Literal Source

JSON Number literal from Int.

numberFromInteger :: Integer -> Literal Source

JSON Number literal from Integer.

numberFromDouble :: Double -> Literal Source

JSON Number literal from Double.

stringFromText :: Text -> Literal Source

JSON String literal from Text encoded using UTF8.

stringFromLazyText :: Text -> Literal Source

JSON String literal from lazy Text encoded using UTF8.

object :: Rows -> Literal Source

JSON Object literal from the Rows builder.

array :: Elements -> Literal Source

JSON Array literal from the Elements builder.

Rows builders

data Rows Source

Builder of JSON Object rows.

Instances

row :: Text -> Literal -> Rows Source

Rows builder from a key-value pair, where value is an already encoded JSON literal.

Use the Rows Monoid instance to construct multi-row objects.

Elements builders

data Elements Source

Builder of JSON Array elements.

element :: Literal -> Elements Source

Elements builder from an element, which is an already encoded JSON literal.

Use the Elements Monoid instance to construct multi-element arrays.