{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NoFieldSelectors #-}
module Okapi.Record.Error where
import Okapi.Tree (Failure)
import Okapi.HTTP.Request.Method (Method)
import Okapi.HTTP.Request.Path (Path)
import Okapi.HTTP.Request.Query (Query)
import Okapi.HTTP.Request.Headers qualified as Request (Headers)
import Okapi.HTTP.Request.Body qualified as Request (Body)
import Okapi.HTTP.Response.Status (Status)
import Okapi.HTTP.Response.Headers qualified as Response (Headers)
import Okapi.HTTP.Response.Body qualified as Response (Body)
data Request method path query headers body = Request
{ forall {k} {k} {k} {k} {k} (method :: k) (path :: k) (query :: k)
(headers :: k) (body :: k).
Request method path query headers body -> Maybe (Failure Method)
method :: Maybe (Failure Method)
, forall {k} {k} {k} {k} {k} (method :: k) (path :: k) (query :: k)
(headers :: k) (body :: k).
Request method path query headers body -> Maybe (Failure Path)
path :: Maybe (Failure Path)
, forall {k} {k} {k} {k} {k} (method :: k) (path :: k) (query :: k)
(headers :: k) (body :: k).
Request method path query headers body -> Maybe (Failure Query)
query :: Maybe (Failure Query)
, :: Maybe (Failure Request.Headers)
, forall {k} {k} {k} {k} {k} (method :: k) (path :: k) (query :: k)
(headers :: k) (body :: k).
Request method path query headers body -> Maybe (Failure Body)
body :: Maybe (Failure Request.Body)
}
data Response status headers body = Response
{ forall {k} {k} {k} (status :: k) (headers :: k) (body :: k).
Response status headers body -> Maybe (Failure Status)
status :: Maybe (Failure Status)
, :: Maybe (Failure Response.Headers)
, forall {k} {k} {k} (status :: k) (headers :: k) (body :: k).
Response status headers body -> Maybe (Failure Body)
body :: Maybe (Failure Response.Body)
}