{-# OPTIONS_HADDOCK hide #-}

module WebDriverPreCore.HttpResponse (
  HttpResponse(..)
) where

import Data.Aeson (Value)
import Data.Text (Text)
import Data.Int (Int)
import GHC.Show (Show)
import Data.Eq (Eq)
import Data.Ord (Ord)

-- | 'HttpResponse' represents a WebDriver HTTP response.
data HttpResponse = MkHttpResponse
  { -- | HTTP status code.
    HttpResponse -> Int
statusCode :: Int,
    -- | HTTP status message.
    HttpResponse -> Text
statusMessage :: Text,
    -- | Response body in JSON format.
    HttpResponse -> Value
body :: Value
  }
  deriving (Int -> HttpResponse -> ShowS
[HttpResponse] -> ShowS
HttpResponse -> String
(Int -> HttpResponse -> ShowS)
-> (HttpResponse -> String)
-> ([HttpResponse] -> ShowS)
-> Show HttpResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> HttpResponse -> ShowS
showsPrec :: Int -> HttpResponse -> ShowS
$cshow :: HttpResponse -> String
show :: HttpResponse -> String
$cshowList :: [HttpResponse] -> ShowS
showList :: [HttpResponse] -> ShowS
Show, HttpResponse -> HttpResponse -> Bool
(HttpResponse -> HttpResponse -> Bool)
-> (HttpResponse -> HttpResponse -> Bool) -> Eq HttpResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: HttpResponse -> HttpResponse -> Bool
== :: HttpResponse -> HttpResponse -> Bool
$c/= :: HttpResponse -> HttpResponse -> Bool
/= :: HttpResponse -> HttpResponse -> Bool
Eq, Eq HttpResponse
Eq HttpResponse =>
(HttpResponse -> HttpResponse -> Ordering)
-> (HttpResponse -> HttpResponse -> Bool)
-> (HttpResponse -> HttpResponse -> Bool)
-> (HttpResponse -> HttpResponse -> Bool)
-> (HttpResponse -> HttpResponse -> Bool)
-> (HttpResponse -> HttpResponse -> HttpResponse)
-> (HttpResponse -> HttpResponse -> HttpResponse)
-> Ord HttpResponse
HttpResponse -> HttpResponse -> Bool
HttpResponse -> HttpResponse -> Ordering
HttpResponse -> HttpResponse -> HttpResponse
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: HttpResponse -> HttpResponse -> Ordering
compare :: HttpResponse -> HttpResponse -> Ordering
$c< :: HttpResponse -> HttpResponse -> Bool
< :: HttpResponse -> HttpResponse -> Bool
$c<= :: HttpResponse -> HttpResponse -> Bool
<= :: HttpResponse -> HttpResponse -> Bool
$c> :: HttpResponse -> HttpResponse -> Bool
> :: HttpResponse -> HttpResponse -> Bool
$c>= :: HttpResponse -> HttpResponse -> Bool
>= :: HttpResponse -> HttpResponse -> Bool
$cmax :: HttpResponse -> HttpResponse -> HttpResponse
max :: HttpResponse -> HttpResponse -> HttpResponse
$cmin :: HttpResponse -> HttpResponse -> HttpResponse
min :: HttpResponse -> HttpResponse -> HttpResponse
Ord)