json-rpc-generic-0.0.1.0: src/Data/JsonRpc/Request.hs
{-# LANGUAGE DeriveFunctor, DeriveFoldable, DeriveTraversable #-}
module Data.JsonRpc.Request (
Request(..), request,
) where
import Prelude hiding (id)
import Data.Text (Text, pack)
import Data.Foldable (Foldable)
import Data.Traversable (Traversable)
import Data.JsonRpc.Id (Id)
data Request a =
Request
{ jsonrpc :: !Text
, method :: !Text
, params :: !(Maybe a)
, id :: !(Maybe Id)
} deriving (Eq, Show, Read, Functor, Foldable, Traversable)
request :: Text -> Maybe a -> Maybe Id -> Request a
request = Request $ pack "2.0"