{-| A dictionary (`Dict`) describes how to convert Haskell values to and from a web representation. Rest resources internally use plain Haskell datatypes, while communication to the outside world mostly happens using XML, JSON, plain text, query parameters, etc. The `Dict` datatype describes how to convert resource /indentifiers, input, request parameters, request headers, output, and errors/ to and from a Haskell representation. The `Dict` datatype and most functions working on it take a type parameters for every aspect of its communication, which can grow quickly. This module and most code that depend on it uses the implicit convention of using the type variable `id` for the resource identifier, the `h` for the request headers, the `p` for the request parameters, the `i` for the request body, the `o` for the response body, and the `e` for a possible error. -} module Rest.Dictionary ( module Rest.Dictionary.Types , module Rest.Dictionary.Combinators ) where import Rest.Dictionary.Types import Rest.Dictionary.Combinators