json-0.9.2: Support for serialising Haskell to and from JSON

Copyright(c) Galois Inc. 2007-2009
LicenseBSD3
MaintainerSigbjorn Finne <sof@galois.com>
Stabilityprovisional
Portabilityportable
Safe HaskellSafe
LanguageHaskell98

Text.JSON.Types

Contents

Description

 

Synopsis

JSON Types

data JSValue Source #

JSON values

The type to which we encode Haskell values. There's a set of primitives, and a couple of heterogenous collection types.

Objects:

An object structure is represented as a pair of curly brackets surrounding zero or more name/value pairs (or members). A name is a string. A single colon comes after each name, separating the name from the value. A single comma separates a value from a following name.

Arrays:

An array structure is represented as square brackets surrounding zero or more values (or elements). Elements are separated by commas.

Only valid JSON can be constructed this way

Instances

Wrapper Types

toJSString :: String -> JSString Source #

Turn a Haskell string into a JSON string.

newtype JSObject e Source #

As can association lists

Constructors

JSONObject 

Fields

toJSObject :: [(String, a)] -> JSObject a Source #

Make JSON object out of an association list.

get_field :: JSObject a -> String -> Maybe a Source #

Get the value of a field, if it exist.

set_field :: JSObject a -> String -> a -> JSObject a Source #

Set the value of a field. Previous values are overwritten.