collection-json-1.3.0.0: Collection+JSON—Hypermedia Type Tools

Copyright(c) Alex Brandt 2017
LicenseMIT
Safe HaskellNone
LanguageHaskell2010

Data.CollectionJSON

Contents

Description

A collection of types and instances for application/vnd.collection+json.

Full documentation for application/vnd.collection+json can be found at http://amundsen.com/media-types/collection/.

Synopsis

Core Data Types

data Collection Source #

The top-level object for an application/vnd.collection+json resource.

Constructors

Collection 

Fields

data Link Source #

A link to a related resource (not necessarily an application/vnd.collection+json resource).

Constructors

Link 

Fields

data Item Source #

An element in the Collection

Constructors

Item 

Fields

Instances
Eq Item Source # 
Instance details

Defined in Data.CollectionJSON

Methods

(==) :: Item -> Item -> Bool #

(/=) :: Item -> Item -> Bool #

Show Item Source # 
Instance details

Defined in Data.CollectionJSON

Methods

showsPrec :: Int -> Item -> ShowS #

show :: Item -> String #

showList :: [Item] -> ShowS #

ToJSON Item Source # 
Instance details

Defined in Data.CollectionJSON

FromJSON Item Source # 
Instance details

Defined in Data.CollectionJSON

data Query Source #

A template for possible queries related to this Collection.

A query should correspond to an associated HTTP GET request.

The Query: > Query "http://example.com/search" "search" Nothing (Just "Search:") [Datum "search" "" Nothing]

Corresponds with the following URI for an HTTP GET: > http://example.com/search?search={search_terms}

Constructors

Query 

Fields

Instances
Eq Query Source # 
Instance details

Defined in Data.CollectionJSON

Methods

(==) :: Query -> Query -> Bool #

(/=) :: Query -> Query -> Bool #

Show Query Source # 
Instance details

Defined in Data.CollectionJSON

Methods

showsPrec :: Int -> Query -> ShowS #

show :: Query -> String #

showList :: [Query] -> ShowS #

ToJSON Query Source # 
Instance details

Defined in Data.CollectionJSON

FromJSON Query Source # 
Instance details

Defined in Data.CollectionJSON

newtype Template Source #

A fillable template for creation of a new object in the Collection.

Constructors

Template 

Fields

Instances
Eq Template Source # 
Instance details

Defined in Data.CollectionJSON

Show Template Source # 
Instance details

Defined in Data.CollectionJSON

ToJSON Template Source # 
Instance details

Defined in Data.CollectionJSON

FromJSON Template Source # 
Instance details

Defined in Data.CollectionJSON

data Error Source #

Information about latest error that occured when responding to a request.

Constructors

Error 

Fields

Instances
Eq Error Source # 
Instance details

Defined in Data.CollectionJSON

Methods

(==) :: Error -> Error -> Bool #

(/=) :: Error -> Error -> Bool #

Show Error Source # 
Instance details

Defined in Data.CollectionJSON

Methods

showsPrec :: Int -> Error -> ShowS #

show :: Error -> String #

showList :: [Error] -> ShowS #

ToJSON Error Source # 
Instance details

Defined in Data.CollectionJSON

FromJSON Error Source # 
Instance details

Defined in Data.CollectionJSON

data Datum Source #

Contents of a Collection Item.

Constructors

Datum 

Fields

Instances
Eq Datum Source # 
Instance details

Defined in Data.CollectionJSON

Methods

(==) :: Datum -> Datum -> Bool #

(/=) :: Datum -> Datum -> Bool #

Show Datum Source # 
Instance details

Defined in Data.CollectionJSON

Methods

showsPrec :: Int -> Datum -> ShowS #

show :: Datum -> String #

showList :: [Datum] -> ShowS #

ToJSON Datum Source # 
Instance details

Defined in Data.CollectionJSON

FromJSON Datum Source # 
Instance details

Defined in Data.CollectionJSON

Type Conversion

class FromCollection a where Source #

A type that can be converted from Collection.

class ToCollection a where Source #

A type that can be converted to Collection.