mig-server-0.2.2.0: Build lightweight and composable servers
Safe HaskellNone
LanguageGHC2021

Mig

Description

Main module to write servers

Server is a function from response to request. Request is wrapped into monad. Library supports IO-monad and ReaderT over IO like monads.

We can build servers from parts with flexible combinators. Let's build hello-world server:

main :: IO ()
main = runServer 8080 server

server :: Server IO
server =
  "api" /. "v1" /. "hello" /. handleHello

handleHello :: Get IO (Resp Text Text)
handleHello = Send $ pure $ ok "Hello World"

We can iuse monoids to combine servers and newtype-wrappers to read various inputs. See readme of the repo for tutorial and docs.

Synopsis

types

newtype Server (m :: Type -> Type) #

Server type. It is a function fron request to response. Some servers does not return valid value. We use it to find right path.

Example:

server :: Server IO
server =
  "api/v1" /.
     [ "foo" /. handleFoo
     , "bar" /. handleBar
     ]

handleFoo :: Query "name" Int -> Get IO (Resp Json Text)
handleBar :: Post Json IO Text

Note that server is monoid and it can be constructed with Monoid functions and path constructor (/.). To pass inputs for handler we can use special newtype wrappers:

  • Query - for required query parameters
  • Optional - for optional query parameters
  • QueryFlag - for boolean query flags
  • Capture - for parsing elements of URI
  • Header - for parsing headers
  • OptionalHeader - for parsing optional headers
  • Body - fot request-body input

and other request types.

To distinguish by HTTP-method we use corresponding constructors: Get, Post, Put, etc. Let's discuss the structure of the constructor. Let's take Get for example:

type Get m a = Send GET m a
newtype Send method m a = Send (m a)

Let's look at the arguments of he type

  • method - type tag of the HTTP-method (GET, POST, PUT, DELETE, etc.)
  • m - underlying server monad
  • a - response type. It should be convertible to the type of the response (see IsResp class).

Constructors

Server 

Fields

Instances

Instances details
Monoid (Server m) 
Instance details

Defined in Mig.Core.Server

Methods

mempty :: Server m #

mappend :: Server m -> Server m -> Server m #

mconcat :: [Server m] -> Server m #

Semigroup (Server m) 
Instance details

Defined in Mig.Core.Server

Methods

(<>) :: Server m -> Server m -> Server m #

sconcat :: NonEmpty (Server m) -> Server m #

stimes :: Integral b => b -> Server m -> Server m #

ToServer (Server m) 
Instance details

Defined in Mig.Core.Class.Server

Methods

toServer :: Server m -> Server (MonadOf (Server m)) #

data Api a #

HTTP API container

Constructors

Append (Api a) (Api a)

alternative between two API's

Empty

an empty API that does nothing

WithPath Path (Api a)

path prefix for an API

HandleRoute a

handle route

Instances

Instances details
Foldable Api 
Instance details

Defined in Mig.Core.Api

Methods

fold :: Monoid m => Api m -> m #

foldMap :: Monoid m => (a -> m) -> Api a -> m #

foldMap' :: Monoid m => (a -> m) -> Api a -> m #

foldr :: (a -> b -> b) -> b -> Api a -> b #

foldr' :: (a -> b -> b) -> b -> Api a -> b #

foldl :: (b -> a -> b) -> b -> Api a -> b #

foldl' :: (b -> a -> b) -> b -> Api a -> b #

foldr1 :: (a -> a -> a) -> Api a -> a #

foldl1 :: (a -> a -> a) -> Api a -> a #

toList :: Api a -> [a] #

null :: Api a -> Bool #

length :: Api a -> Int #

elem :: Eq a => a -> Api a -> Bool #

maximum :: Ord a => Api a -> a #

minimum :: Ord a => Api a -> a #

sum :: Num a => Api a -> a #

product :: Num a => Api a -> a #

Traversable Api 
Instance details

Defined in Mig.Core.Api

Methods

traverse :: Applicative f => (a -> f b) -> Api a -> f (Api b) #

sequenceA :: Applicative f => Api (f a) -> f (Api a) #

mapM :: Monad m => (a -> m b) -> Api a -> m (Api b) #

sequence :: Monad m => Api (m a) -> m (Api a) #

Functor Api 
Instance details

Defined in Mig.Core.Api

Methods

fmap :: (a -> b) -> Api a -> Api b #

(<$) :: a -> Api b -> Api a #

Monoid (Api a) 
Instance details

Defined in Mig.Core.Api

Methods

mempty :: Api a #

mappend :: Api a -> Api a -> Api a #

mconcat :: [Api a] -> Api a #

Semigroup (Api a) 
Instance details

Defined in Mig.Core.Api

Methods

(<>) :: Api a -> Api a -> Api a #

sconcat :: NonEmpty (Api a) -> Api a #

stimes :: Integral b => b -> Api a -> Api a #

Show a => Show (Api a) 
Instance details

Defined in Mig.Core.Api

Methods

showsPrec :: Int -> Api a -> ShowS #

show :: Api a -> String #

showList :: [Api a] -> ShowS #

Eq a => Eq (Api a) 
Instance details

Defined in Mig.Core.Api

Methods

(==) :: Api a -> Api a -> Bool #

(/=) :: Api a -> Api a -> Bool #

newtype Path #

Path is a chain of elements which can be static types or capture. There is IsString instance which allows us to create paths from strings. Examples:

"api/v1/foo" ==> Path [StaticPath "api", StaticPath "v1", StaticPath "foo"]
"api/v1/*" ==> Path [StaticPath "api", StaticPath "v1", CapturePath "*"]

Constructors

Path 

Fields

Instances

Instances details
IsString Path 
Instance details

Defined in Mig.Core.Api

Methods

fromString :: String -> Path #

Monoid Path 
Instance details

Defined in Mig.Core.Api

Methods

mempty :: Path #

mappend :: Path -> Path -> Path #

mconcat :: [Path] -> Path #

Semigroup Path 
Instance details

Defined in Mig.Core.Api

Methods

(<>) :: Path -> Path -> Path #

sconcat :: NonEmpty Path -> Path #

stimes :: Integral b => b -> Path -> Path #

Show Path 
Instance details

Defined in Mig.Core.Api

Methods

showsPrec :: Int -> Path -> ShowS #

show :: Path -> String #

showList :: [Path] -> ShowS #

Eq Path 
Instance details

Defined in Mig.Core.Api

Methods

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

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

Ord Path 
Instance details

Defined in Mig.Core.Api

Methods

compare :: Path -> Path -> Ordering #

(<) :: Path -> Path -> Bool #

(<=) :: Path -> Path -> Bool #

(>) :: Path -> Path -> Bool #

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

max :: Path -> Path -> Path #

min :: Path -> Path -> Path #

ToHttpApiData Path 
Instance details

Defined in Mig.Core.Api

data PathItem #

Path can be a static item or capture with a name

Instances

Instances details
Show PathItem 
Instance details

Defined in Mig.Core.Api

Eq PathItem 
Instance details

Defined in Mig.Core.Api

Ord PathItem 
Instance details

Defined in Mig.Core.Api

ToHttpApiData PathItem 
Instance details

Defined in Mig.Core.Api

data Route (m :: Type -> Type) #

Route contains API-info and how to run it

Constructors

Route 

Fields

Instances

Instances details
MonadIO m => ToRoute (Route m) 
Instance details

Defined in Mig.Core.Class.Route

DSL

data Json #

Type-level tag for JSON media type It is converted to "application/json"

Instances

Instances details
ToMediaType Json 
Instance details

Defined in Mig.Core.Class.MediaType

FromJSON a => FromReqBody Json a 
Instance details

Defined in Mig.Core.Class.MediaType

ToJSON a => ToRespBody Json a 
Instance details

Defined in Mig.Core.Class.MediaType

Methods

toRespBody :: a -> ByteString #

data AnyMedia #

Signifies any media. It prescribes the server renderer to lookup media-type at run-time in the "Conten-Type" header. As media-type it is rendered to "*/*".

It is useful for values for which we want to derive content type from run-time values. For example it is used for static file servers to get media type from file extension.

Instances

Instances details
ToMediaType AnyMedia 
Instance details

Defined in Mig.Core.Class.MediaType

ToRespBody AnyMedia ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

ToRespBody AnyMedia ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

data FormUrlEncoded #

Type-level tag for FORM url encoded media-type. It is converted to "application/x-www-form-urlencoded"

Instances

Instances details
ToMediaType FormUrlEncoded 
Instance details

Defined in Mig.Core.Class.MediaType

FromForm a => FromReqBody FormUrlEncoded a 
Instance details

Defined in Mig.Core.Class.MediaType

ToForm a => ToRespBody FormUrlEncoded a 
Instance details

Defined in Mig.Core.Class.MediaType

Methods

toRespBody :: a -> ByteString #

data OctetStream #

Media type octet stream is for passing raw byte-strings in the request body. It is converted to "application/octet-stream"

class ToServer a where #

Values that can be converted to server

Methods

toServer :: a -> Server (MonadOf a) #

Convert value to server

Instances

Instances details
ToRoute a => ToServer a 
Instance details

Defined in Mig.Core.Class.Server

Methods

toServer :: a -> Server (MonadOf a) #

ToServer (Server m) 
Instance details

Defined in Mig.Core.Class.Server

Methods

toServer :: Server m -> Server (MonadOf (Server m)) #

ToServer a => ToServer [a] 
Instance details

Defined in Mig.Core.Class.Server

Methods

toServer :: [a] -> Server (MonadOf [a]) #

class MonadIO (MonadOf a) => ToRoute a where #

Values that represent routes. A route is a function of arbitrary number of arguments. Where each argument is one of the special newtype-wrappers that read type-safe information from HTTP-request and return type of the route function is a value of something convertible to HTTP-request.

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

Update API info

toRouteFun :: a -> ServerFun (MonadOf a) #

Convert to route

Instances

Instances details
MonadIO m => ToRoute (Route m) 
Instance details

Defined in Mig.Core.Class.Route

(ToSchema a, FromReqBody media a, ToRoute b) => ToRoute (Body media a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Body media a -> b) -> ServerFun (MonadOf (Body media a -> b)) #

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (Capture sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Capture sym a -> b) -> ServerFun (MonadOf (Capture sym a -> b)) #

(FromForm a, ToRoute b) => ToRoute (Cookie a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Cookie a -> b) -> ServerFun (MonadOf (Cookie a -> b)) #

ToRoute b => ToRoute (FullPathInfo -> b) 
Instance details

Defined in Mig.Core.Class.Route

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (Header sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Header sym a -> b) -> ServerFun (MonadOf (Header sym a -> b)) #

ToRoute b => ToRoute (IsSecure -> b) 
Instance details

Defined in Mig.Core.Class.Route

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (Optional sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Optional sym a -> b) -> ServerFun (MonadOf (Optional sym a -> b)) #

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (OptionalHeader sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

ToRoute b => ToRoute (PathInfo -> b) 
Instance details

Defined in Mig.Core.Class.Route

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (Query sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Query sym a -> b) -> ServerFun (MonadOf (Query sym a -> b)) #

(ToRoute b, KnownSymbol sym) => ToRoute (QueryFlag sym -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (QueryFlag sym -> b) -> ServerFun (MonadOf (QueryFlag sym -> b)) #

ToRoute b => ToRoute (RawRequest -> b) 
Instance details

Defined in Mig.Core.Class.Route

(ToSchema a, FromJSON a, ToRoute b) => ToRoute (Body a -> b) 
Instance details

Defined in Mig.Extra.Server.Json

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Body a -> b) -> ServerFun (MonadOf (Body a -> b)) #

(MonadIO m, IsResp a, IsMethod method) => ToRoute (Send method m a) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: Send method m a -> ServerFun (MonadOf (Send method m a)) #

data MediaType #

An HTTP media type, consisting of the type, subtype, and parameters.

Instances

Instances details
IsString MediaType 
Instance details

Defined in Network.HTTP.Media.MediaType.Internal

Show MediaType 
Instance details

Defined in Network.HTTP.Media.MediaType.Internal

Eq MediaType 
Instance details

Defined in Network.HTTP.Media.MediaType.Internal

Ord MediaType 
Instance details

Defined in Network.HTTP.Media.MediaType.Internal

Accept MediaType 
Instance details

Defined in Network.HTTP.Media.MediaType.Internal

RenderHeader MediaType 
Instance details

Defined in Network.HTTP.Media.MediaType.Internal

HasContentType Encoding (Maybe MediaType) 
Instance details

Defined in Data.OpenApi.Lens

HasContent RequestBody (InsOrdHashMap MediaType MediaTypeObject) 
Instance details

Defined in Data.OpenApi.Lens

HasContent Response (InsOrdHashMap MediaType MediaTypeObject) 
Instance details

Defined in Data.OpenApi.Lens

class ToMediaType (a :: k) where #

Conversion of type-level tags to media type values

Instances

Instances details
ToMediaType Html 
Instance details

Defined in Mig.Core.Class.MediaType

ToMediaType ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

ToMediaType AnyMedia 
Instance details

Defined in Mig.Core.Class.MediaType

ToMediaType FormUrlEncoded 
Instance details

Defined in Mig.Core.Class.MediaType

ToMediaType Json 
Instance details

Defined in Mig.Core.Class.MediaType

ToMediaType OctetStream 
Instance details

Defined in Mig.Core.Class.MediaType

ToMediaType Text 
Instance details

Defined in Mig.Core.Class.MediaType

class ToMediaType ty => ToRespBody (ty :: k) b where #

Values that can be rendered to response body byte string.

Methods

toRespBody :: b -> ByteString #

Instances

Instances details
ToMarkup a => ToRespBody Html a 
Instance details

Defined in Mig.Core.Class.MediaType

Methods

toRespBody :: a -> ByteString #

ToRespBody AnyMedia ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

ToRespBody AnyMedia ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

ToForm a => ToRespBody FormUrlEncoded a 
Instance details

Defined in Mig.Core.Class.MediaType

Methods

toRespBody :: a -> ByteString #

ToJSON a => ToRespBody Json a 
Instance details

Defined in Mig.Core.Class.MediaType

Methods

toRespBody :: a -> ByteString #

ToRespBody OctetStream ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

ToRespBody OctetStream ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

ToRespBody Text Text 
Instance details

Defined in Mig.Core.Class.MediaType

ToRespBody Text Text 
Instance details

Defined in Mig.Core.Class.MediaType

class ToMediaType ty => FromReqBody (ty :: k) b where #

Values that can be parsed from request byte string.

Instances

Instances details
FromForm a => FromReqBody FormUrlEncoded a 
Instance details

Defined in Mig.Core.Class.MediaType

FromJSON a => FromReqBody Json a 
Instance details

Defined in Mig.Core.Class.MediaType

FromReqBody OctetStream ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

FromReqBody OctetStream ByteString 
Instance details

Defined in Mig.Core.Class.MediaType

FromReqBody Text Text 
Instance details

Defined in Mig.Core.Class.MediaType

response

class IsResp a where #

Values that can be converted to low-level response.

The repsonse value is usually one of two cases:

  • Resp a -- for routes which always produce a value
  • RespOr err a - for routes that can also produce an error or value.
  • Response - low-level HTTP-response.

Associated Types

type RespBody a #

the type of response body value

type RespError a #

the type of an error

type RespMedia a #

the media tpye of resp

Methods

ok :: RespBody a -> a #

Returns valid repsonse with 200 status

bad :: Status -> RespError a -> a #

Returns an error with given status

noContent :: Status -> a #

response with no content

addHeaders :: ResponseHeaders -> a -> a #

Add some header to the response

getHeaders :: a -> ResponseHeaders #

Get response headers

setStatus :: Status -> a -> a #

Sets repsonse status

getRespBody :: a -> Maybe (RespBody a) #

Get response body

getRespError :: a -> Maybe (RespError a) #

Get response error

getStatus :: a -> Status #

Get response status

setMedia :: MediaType -> a -> a #

Set the media type of the response

getMedia :: MediaType #

Reads the media type by response type

toResponse :: a -> Response #

Converts value to low-level response

Instances

Instances details
IsResp Response 
Instance details

Defined in Mig.Core.Class.Response

Associated Types

type RespBody Response 
Instance details

Defined in Mig.Core.Class.Response

type RespError Response 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia Response 
Instance details

Defined in Mig.Core.Class.Response

ToMarkup a => IsResp (Resp a) 
Instance details

Defined in Mig.Extra.Server.Html

Associated Types

type RespBody (Resp a) 
Instance details

Defined in Mig.Extra.Server.Html

type RespBody (Resp a) = RespBody (Resp Html a)
type RespError (Resp a) 
Instance details

Defined in Mig.Extra.Server.Html

type RespMedia (Resp a) 
Instance details

Defined in Mig.Extra.Server.Html

ToJSON a => IsResp (Resp a) 
Instance details

Defined in Mig.Extra.Server.Json

Associated Types

type RespBody (Resp a) 
Instance details

Defined in Mig.Extra.Server.Json

type RespBody (Resp a) = RespBody (Resp Json a)
type RespError (Resp a) 
Instance details

Defined in Mig.Extra.Server.Json

type RespMedia (Resp a) 
Instance details

Defined in Mig.Extra.Server.Json

ToRespBody ty a => IsResp (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

Associated Types

type RespBody (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespBody (Resp ty a) = a
type RespError (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespError (Resp ty a) = a
type RespMedia (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia (Resp ty a) = ty

Methods

ok :: RespBody (Resp ty a) -> Resp ty a #

bad :: Status -> RespError (Resp ty a) -> Resp ty a #

noContent :: Status -> Resp ty a #

addHeaders :: ResponseHeaders -> Resp ty a -> Resp ty a #

getHeaders :: Resp ty a -> ResponseHeaders #

setStatus :: Status -> Resp ty a -> Resp ty a #

getRespBody :: Resp ty a -> Maybe (RespBody (Resp ty a)) #

getRespError :: Resp ty a -> Maybe (RespError (Resp ty a)) #

getStatus :: Resp ty a -> Status #

setMedia :: MediaType -> Resp ty a -> Resp ty a #

getMedia :: MediaType #

toResponse :: Resp ty a -> Response #

(ToJSON err, ToJSON a) => IsResp (RespOr err a) 
Instance details

Defined in Mig.Extra.Server.Json

Associated Types

type RespBody (RespOr err a) 
Instance details

Defined in Mig.Extra.Server.Json

type RespBody (RespOr err a) = RespBody (RespOr Json err a)
type RespError (RespOr err a) 
Instance details

Defined in Mig.Extra.Server.Json

type RespError (RespOr err a) = RespError (RespOr Json err a)
type RespMedia (RespOr err a) 
Instance details

Defined in Mig.Extra.Server.Json

type RespMedia (RespOr err a) = RespMedia (RespOr Json err a)

Methods

ok :: RespBody (RespOr err a) -> RespOr err a #

bad :: Status -> RespError (RespOr err a) -> RespOr err a #

noContent :: Status -> RespOr err a #

addHeaders :: ResponseHeaders -> RespOr err a -> RespOr err a #

getHeaders :: RespOr err a -> ResponseHeaders #

setStatus :: Status -> RespOr err a -> RespOr err a #

getRespBody :: RespOr err a -> Maybe (RespBody (RespOr err a)) #

getRespError :: RespOr err a -> Maybe (RespError (RespOr err a)) #

getStatus :: RespOr err a -> Status #

setMedia :: MediaType -> RespOr err a -> RespOr err a #

getMedia :: MediaType #

toResponse :: RespOr err a -> Response #

(ToRespBody ty err, ToRespBody ty a) => IsResp (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

Associated Types

type RespBody (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespBody (RespOr ty err a) = a
type RespError (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespError (RespOr ty err a) = err
type RespMedia (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia (RespOr ty err a) = ty

Methods

ok :: RespBody (RespOr ty err a) -> RespOr ty err a #

bad :: Status -> RespError (RespOr ty err a) -> RespOr ty err a #

noContent :: Status -> RespOr ty err a #

addHeaders :: ResponseHeaders -> RespOr ty err a -> RespOr ty err a #

getHeaders :: RespOr ty err a -> ResponseHeaders #

setStatus :: Status -> RespOr ty err a -> RespOr ty err a #

getRespBody :: RespOr ty err a -> Maybe (RespBody (RespOr ty err a)) #

getRespError :: RespOr ty err a -> Maybe (RespError (RespOr ty err a)) #

getStatus :: RespOr ty err a -> Status #

setMedia :: MediaType -> RespOr ty err a -> RespOr ty err a #

getMedia :: MediaType #

toResponse :: RespOr ty err a -> Response #

badReq :: IsResp a => RespError a -> a #

Bad request. The bad response with 400 status.

internalServerError :: IsResp a => RespError a -> a #

Internal server error. The bad response with 500 status.

notImplemented :: IsResp a => RespError a -> a #

Not implemented route. The bad response with 501 status.

redirect :: IsResp a => Text -> a #

Redirect to url. It is bad response with 302 status and set header of Location to a given URL.

setHeader :: (IsResp a, ToHttpApiData h) => HeaderName -> h -> a -> a #

Set header for response

setCookie :: (ToForm cookie, IsResp resp) => SetCookie cookie -> resp -> resp #

Set cookie as http header from form url encoded value

data SetCookie a #

Constructors

SetCookie 

Instances

Instances details
Show a => Show (SetCookie a) 
Instance details

Defined in Mig.Core.Class.Response

Eq a => Eq (SetCookie a) 
Instance details

Defined in Mig.Core.Class.Response

Methods

(==) :: SetCookie a -> SetCookie a -> Bool #

(/=) :: SetCookie a -> SetCookie a -> Bool #

defCookie :: a -> SetCookie a #

Default cookie which sets only the cookie itself.

methods

newtype Send (method :: k) (m :: k1 -> Type) (a :: k1) #

Route response type. It encodes the route method in the type and which monad is used and which type the response has.

The repsonse value is usually one of two cases:

  • Resp media a -- for routes which always produce a value
  • RespOr media err a - for routes that can also produce an error or value.

See the class IsResp for more details on response types.

Constructors

Send 

Fields

Instances

Instances details
MonadTrans (Send method :: (Type -> Type) -> Type -> Type) 
Instance details

Defined in Mig.Core.Types.Route

Methods

lift :: Monad m => m a -> Send method m a #

MonadIO m => MonadIO (Send method m) 
Instance details

Defined in Mig.Core.Types.Route

Methods

liftIO :: IO a -> Send method m a #

Applicative m => Applicative (Send method m) 
Instance details

Defined in Mig.Core.Types.Route

Methods

pure :: a -> Send method m a #

(<*>) :: Send method m (a -> b) -> Send method m a -> Send method m b #

liftA2 :: (a -> b -> c) -> Send method m a -> Send method m b -> Send method m c #

(*>) :: Send method m a -> Send method m b -> Send method m b #

(<*) :: Send method m a -> Send method m b -> Send method m a #

Functor m => Functor (Send method m) 
Instance details

Defined in Mig.Core.Types.Route

Methods

fmap :: (a -> b) -> Send method m a -> Send method m b #

(<$) :: a -> Send method m b -> Send method m a #

Monad m => Monad (Send method m) 
Instance details

Defined in Mig.Core.Types.Route

Methods

(>>=) :: Send method m a -> (a -> Send method m b) -> Send method m b #

(>>) :: Send method m a -> Send method m b -> Send method m b #

return :: a -> Send method m a #

(MonadIO m, IsResp a, IsMethod method) => ToRoute (Send method m a) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: Send method m a -> ServerFun (MonadOf (Send method m a)) #

(ToRespBody (RespMedia a) (RespError a), IsResp a) => FromClient (Send method Client a) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (Send method Client a) 
Instance details

Defined in Mig.Client

Methods

fromClient :: Send method Client a -> ClientResult (Send method Client a) #

MapRequest (Send method Client a) 
Instance details

Defined in Mig.Client

Methods

mapRequest :: (Request -> Request) -> Send method Client a -> Send method Client a

mapCapture :: (CaptureMap -> CaptureMap) -> Send method Client a -> Send method Client a

(IsMethod method, FromReqBody (RespMedia a) (RespBody a), IsResp a) => ToClient (Send method Client a) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> Send method Client a #

clientArity :: Int #

type ClientResult (Send method Client a) 
Instance details

Defined in Mig.Client

type Get (m :: k -> Type) (a :: k) = Send GET m a #

Get request

type Post (m :: k -> Type) (a :: k) = Send POST m a #

Post request

type Put (m :: k -> Type) (a :: k) = Send PUT m a #

Put request

type Delete (m :: k -> Type) (a :: k) = Send DELETE m a #

Delete request

type Patch (m :: k -> Type) (a :: k) = Send PATCH m a #

Path request

type Options (m :: k -> Type) (a :: k) = Send OPTIONS m a #

Options request

type Head (m :: k -> Type) (a :: k) = Send HEAD m a #

Head request

type Trace (m :: k -> Type) (a :: k) = Send TRACE m a #

trace request

class IsMethod (a :: k) where #

Converts type-level tag for methods to value

Methods

toMethod :: Method #

Instances

Instances details
IsMethod DELETE 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

IsMethod GET 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

IsMethod HEAD 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

IsMethod OPTIONS 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

IsMethod PATCH 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

IsMethod POST 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

IsMethod PUT 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

IsMethod TRACE 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

data GET #

type-level GET-method tag

Instances

Instances details
IsMethod GET 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

data POST #

type-level POST-method tag

Instances

Instances details
IsMethod POST 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

data PUT #

type-level PUT-method tag

Instances

Instances details
IsMethod PUT 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

data DELETE #

type-level DELETE-method tag

Instances

Instances details
IsMethod DELETE 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

data PATCH #

type-level PATCH-method tag

Instances

Instances details
IsMethod PATCH 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

data OPTIONS #

type-level OPTIONS-method tag

Instances

Instances details
IsMethod OPTIONS 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

data HEAD #

type-level HEAD-method tag

Instances

Instances details
IsMethod HEAD 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

data TRACE #

type-level TRACE-method tag

Instances

Instances details
IsMethod TRACE 
Instance details

Defined in Mig.Core.Types.Route

Methods

toMethod :: Method #

safe URLs

type family UrlOf a where ... #

Converts route type to URL function

Equations

UrlOf (Send method m a) = Url 
UrlOf (Query name value -> b) = Query name value -> UrlOf b 
UrlOf (Optional name value -> b) = Optional name value -> UrlOf b 
UrlOf (Capture name value -> b) = Capture name value -> UrlOf b 
UrlOf (QueryFlag name -> b) = QueryFlag name -> UrlOf b 
UrlOf (Header name value -> b) = UrlOf b 
UrlOf (OptionalHeader name value -> b) = UrlOf b 
UrlOf (Body media value -> b) = UrlOf b 
UrlOf (Cookie value -> b) = UrlOf b 
UrlOf (PathInfo -> b) = UrlOf b 
UrlOf (FullPathInfo -> b) = UrlOf b 
UrlOf (RawRequest -> b) = UrlOf b 
UrlOf (IsSecure -> b) = UrlOf b 
UrlOf (a, b) = (UrlOf a, UrlOf b) 
UrlOf (a, b, c) = (UrlOf a, UrlOf b, UrlOf c) 
UrlOf (a, b, c, d) = (UrlOf a, UrlOf b, UrlOf c, UrlOf d) 
UrlOf (a, b, c, d, e) = (UrlOf a, UrlOf b, UrlOf c, UrlOf d, UrlOf e) 
UrlOf (a, b, c, d, e, f) = (UrlOf a, UrlOf b, UrlOf c, UrlOf d, UrlOf e, UrlOf f) 
UrlOf (a :| b) = UrlOf a :| UrlOf b 

class ToUrl a where #

Converts server to safe url. We can use it to generate safe URL constructors to be used in HTML templates An example of how we can create safe URL's. Note that order of URL's should be the same as in server definition:

type GreetingRoute = Get Html
type BlogPostRoute = Optional "id" BlogPostId -> Get Html
type ListPostsRoute = Get Html

data Routes = Routes
  { greeting :: GreetingRoute
  , blogPost :: BlogPostRoute
  , listPosts :: ListPostsRoute
  }

-- URLs

data Urls = Urls
  { greeting :: UrlOf GreetingRoute
  , blogPost :: UrlOf BlogPostRoute
  , listPosts :: UrlOf ListPostsRoute
  }

{\-| Site URL's
URL's should be listed in the same order as they appear in the server
-\}
urls :: Urls
urls = Urls{..}
  where
    greeting
      :| blogPost
      :| listPosts
        toUrl (server undefined)

Methods

toUrl :: forall (m :: Type -> Type). Server m -> a #

mapUrl :: (Url -> Url) -> a -> a #

urlArity :: Int #

Instances

Instances details
ToUrl Url 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> Url #

mapUrl :: (Url -> Url) -> Url -> Url #

urlArity :: Int #

(ToUrl a, ToUrl b) => ToUrl (a :| b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> a :| b #

mapUrl :: (Url -> Url) -> (a :| b) -> a :| b #

urlArity :: Int #

(ToUrl a, ToUrl b) => ToUrl (a, b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> (a, b) #

mapUrl :: (Url -> Url) -> (a, b) -> (a, b) #

urlArity :: Int #

(KnownSymbol sym, ToHttpApiData a, ToUrl b) => ToUrl (Capture sym a -> b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> Capture sym a -> b #

mapUrl :: (Url -> Url) -> (Capture sym a -> b) -> Capture sym a -> b #

urlArity :: Int #

(KnownSymbol sym, ToHttpApiData a, ToUrl b) => ToUrl (Optional sym a -> b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> Optional sym a -> b #

mapUrl :: (Url -> Url) -> (Optional sym a -> b) -> Optional sym a -> b #

urlArity :: Int #

(KnownSymbol sym, ToHttpApiData a, ToUrl b) => ToUrl (Query sym a -> b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> Query sym a -> b #

mapUrl :: (Url -> Url) -> (Query sym a -> b) -> Query sym a -> b #

urlArity :: Int #

(KnownSymbol sym, ToUrl b) => ToUrl (QueryFlag sym -> b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> QueryFlag sym -> b #

mapUrl :: (Url -> Url) -> (QueryFlag sym -> b) -> QueryFlag sym -> b #

urlArity :: Int #

(ToUrl a, ToUrl b, ToUrl c) => ToUrl (a, b, c) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> (a, b, c) #

mapUrl :: (Url -> Url) -> (a, b, c) -> (a, b, c) #

urlArity :: Int #

(ToUrl a, ToUrl b, ToUrl c, ToUrl d) => ToUrl (a, b, c, d) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> (a, b, c, d) #

mapUrl :: (Url -> Url) -> (a, b, c, d) -> (a, b, c, d) #

urlArity :: Int #

data Url #

Url-template type.

Constructors

Url 

Fields

Instances

Instances details
ToJSON Url 
Instance details

Defined in Mig.Core.Class.Url

ToUrl Url 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> Url #

mapUrl :: (Url -> Url) -> Url -> Url #

urlArity :: Int #

renderUrl :: IsString a => Url -> a #

Render URL to string-like value.

TODO: use Text.Builder

data a :| b #

Infix synonym for pair. It can be useful to stack together many client functions in the output of toClient function.

Constructors

a :| b 

Instances

Instances details
(ToUrl a, ToUrl b) => ToUrl (a :| b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> a :| b #

mapUrl :: (Url -> Url) -> (a :| b) -> a :| b #

urlArity :: Int #

(MapRequest a, MapRequest b) => MapRequest (a :| b) 
Instance details

Defined in Mig.Client

Methods

mapRequest :: (Request -> Request) -> (a :| b) -> a :| b

mapCapture :: (CaptureMap -> CaptureMap) -> (a :| b) -> a :| b

(ToClient a, ToClient b) => ToClient (a :| b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> a :| b #

clientArity :: Int #

path and query

Build API for routes with queries and captures. Use monoid to combine several routes together.

(/.) :: ToServer a => Path -> a -> Server (MonadOf a) infixr 4 #

Constructs server which can handle given path. Example:

"api/v1/get/info" /. handleInfo

For captures we use wild-cards:

"api/v1/get/info/*" /. handleInfo

And handle info has capture argument:

handleInfo :: Capture "nameA" -> Get IO (Resp Json value)

The name for the capture is derived from the type signature of the route handler. Note that if capture is in the last position of the path we can omit wild cards. The proper amount of captures will be derived from the type signature of the handler.

newtype Capture (sym :: Symbol) a #

Argument of capture from the query.

"api/route/{foo} if api/route/bar passed"  ==> (Capture bar) :: Capture "Foo" barType

Constructors

Capture a 

Instances

Instances details
(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (Capture sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Capture sym a -> b) -> ServerFun (MonadOf (Capture sym a -> b)) -> ServerFun (MonadOf (Capture sym a -> b)) #

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (Capture sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Capture sym a -> b) -> ServerFun (MonadOf (Capture sym a -> b)) #

(KnownSymbol sym, ToHttpApiData a, ToUrl b) => ToUrl (Capture sym a -> b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> Capture sym a -> b #

mapUrl :: (Url -> Url) -> (Capture sym a -> b) -> Capture sym a -> b #

urlArity :: Int #

FromClient b => FromClient (Capture sym a -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (Capture sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Capture sym a -> b) = a -> ClientResult b

Methods

fromClient :: (Capture sym a -> b) -> ClientResult (Capture sym a -> b) #

(KnownSymbol sym, ToHttpApiData a, ToClient b) => ToClient (Capture sym a -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> Capture sym a -> b #

clientArity :: Int #

type ClientResult (Capture sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Capture sym a -> b) = a -> ClientResult b

newtype Query (sym :: Symbol) a #

Required URL parameter query.

"api/route?foo=bar" ==> (Query bar) :: Query "foo" a

Constructors

Query a 

Instances

Instances details
(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (Query sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Query sym a -> b) -> ServerFun (MonadOf (Query sym a -> b)) -> ServerFun (MonadOf (Query sym a -> b)) #

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (Query sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Query sym a -> b) -> ServerFun (MonadOf (Query sym a -> b)) #

(KnownSymbol sym, ToHttpApiData a, ToUrl b) => ToUrl (Query sym a -> b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> Query sym a -> b #

mapUrl :: (Url -> Url) -> (Query sym a -> b) -> Query sym a -> b #

urlArity :: Int #

FromClient b => FromClient (Query sym a -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (Query sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Query sym a -> b) = a -> ClientResult b

Methods

fromClient :: (Query sym a -> b) -> ClientResult (Query sym a -> b) #

(KnownSymbol sym, ToHttpApiData a, ToClient b) => ToClient (Query sym a -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> Query sym a -> b #

clientArity :: Int #

type ClientResult (Query sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Query sym a -> b) = a -> ClientResult b

newtype QueryFlag (sym :: Symbol) #

Query flag. It is a boolean value in the URL-query. If it is missing it is False if it is in the query but does not have any value it is True. Also it can have values true/false in the query.

Constructors

QueryFlag Bool 

Instances

Instances details
(ToPlugin b, KnownSymbol sym) => ToPlugin (QueryFlag sym -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (QueryFlag sym -> b) -> ServerFun (MonadOf (QueryFlag sym -> b)) -> ServerFun (MonadOf (QueryFlag sym -> b)) #

(ToRoute b, KnownSymbol sym) => ToRoute (QueryFlag sym -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (QueryFlag sym -> b) -> ServerFun (MonadOf (QueryFlag sym -> b)) #

(KnownSymbol sym, ToUrl b) => ToUrl (QueryFlag sym -> b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> QueryFlag sym -> b #

mapUrl :: (Url -> Url) -> (QueryFlag sym -> b) -> QueryFlag sym -> b #

urlArity :: Int #

FromClient b => FromClient (QueryFlag a -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (QueryFlag a -> b) 
Instance details

Defined in Mig.Client

Methods

fromClient :: (QueryFlag a -> b) -> ClientResult (QueryFlag a -> b) #

(KnownSymbol sym, ToClient b) => ToClient (QueryFlag sym -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> QueryFlag sym -> b #

clientArity :: Int #

type ClientResult (QueryFlag a -> b) 
Instance details

Defined in Mig.Client

newtype Optional (sym :: Symbol) a #

Optional URL parameter query.

"api/route?foo=bar" ==> (Optional maybeBar) :: Query "foo" a

Constructors

Optional (Maybe a) 

Instances

Instances details
(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (Optional sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Optional sym a -> b) -> ServerFun (MonadOf (Optional sym a -> b)) -> ServerFun (MonadOf (Optional sym a -> b)) #

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (Optional sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Optional sym a -> b) -> ServerFun (MonadOf (Optional sym a -> b)) #

(KnownSymbol sym, ToHttpApiData a, ToUrl b) => ToUrl (Optional sym a -> b) 
Instance details

Defined in Mig.Core.Class.Url

Methods

toUrl :: forall (m :: Type -> Type). Server m -> Optional sym a -> b #

mapUrl :: (Url -> Url) -> (Optional sym a -> b) -> Optional sym a -> b #

urlArity :: Int #

FromClient b => FromClient (Optional sym a -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (Optional sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Optional sym a -> b) = Maybe a -> ClientResult b

Methods

fromClient :: (Optional sym a -> b) -> ClientResult (Optional sym a -> b) #

(KnownSymbol sym, ToHttpApiData a, ToClient b) => ToClient (Optional sym a -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> Optional sym a -> b #

clientArity :: Int #

type ClientResult (Optional sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Optional sym a -> b) = Maybe a -> ClientResult b

newtype Body (media :: k) a #

Generic case for request body. The type encodes a media type and value of the request body.

Constructors

Body a 

Instances

Instances details
(FromReqBody ty a, ToSchema a, ToPlugin b) => ToPlugin (Body ty a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Body ty a -> b) -> ServerFun (MonadOf (Body ty a -> b)) -> ServerFun (MonadOf (Body ty a -> b)) #

(ToSchema a, FromReqBody media a, ToRoute b) => ToRoute (Body media a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Body media a -> b) -> ServerFun (MonadOf (Body media a -> b)) #

FromClient b => FromClient (Body media a -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (Body media a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Body media a -> b) = a -> ClientResult b

Methods

fromClient :: (Body media a -> b) -> ClientResult (Body media a -> b) #

(ToRespBody media a, ToClient b) => ToClient (Body media a -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> Body media a -> b #

clientArity :: Int #

type ClientResult (Body media a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Body media a -> b) = a -> ClientResult b

newtype OptionalHeader (sym :: Symbol) a #

Reads value from the optional header by name. For example if the request has header:

"foo": "bar"

It reads the value:

(OptionalHeader (Just bar)) :: OptionalHeader "foo" barType

Constructors

OptionalHeader (Maybe a) 

Instances

Instances details
(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (OptionalHeader sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (OptionalHeader sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

FromClient b => FromClient (OptionalHeader sym a -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (OptionalHeader sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (OptionalHeader sym a -> b) = Maybe a -> ClientResult b

Methods

fromClient :: (OptionalHeader sym a -> b) -> ClientResult (OptionalHeader sym a -> b) #

(KnownSymbol sym, ToHttpApiData a, ToClient b) => ToClient (OptionalHeader sym a -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> OptionalHeader sym a -> b #

clientArity :: Int #

type ClientResult (OptionalHeader sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (OptionalHeader sym a -> b) = Maybe a -> ClientResult b

newtype Cookie a #

Reads a cookie. It's an optional header with name Cookie. The cookie is URL-encoded and read with instnace of FromForm class.

data MyCookie = MyCookie
  { secret :: Text
  , count :: Int
  }
  deriving (Generic, FromForm)

> "secret=lolkek&count=101"

(Cookie (Just (MyCookie { secret = "lolkek", count = 101 }))) :: Cookie MyCookie

Constructors

Cookie (Maybe a) 

Instances

Instances details
(FromForm a, ToPlugin b) => ToPlugin (Cookie a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Cookie a -> b) -> ServerFun (MonadOf (Cookie a -> b)) -> ServerFun (MonadOf (Cookie a -> b)) #

(FromForm a, ToRoute b) => ToRoute (Cookie a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Cookie a -> b) -> ServerFun (MonadOf (Cookie a -> b)) #

newtype Header (sym :: Symbol) a #

Reads value from the required header by name. For example if the request has header:

"foo": "bar"

It reads the value:

(Header bar) :: Header "foo" barType

Constructors

Header a 

Instances

Instances details
(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (Header sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Header sym a -> b) -> ServerFun (MonadOf (Header sym a -> b)) -> ServerFun (MonadOf (Header sym a -> b)) #

(FromHttpApiData a, ToParamSchema a, ToRoute b, KnownSymbol sym) => ToRoute (Header sym a -> b) 
Instance details

Defined in Mig.Core.Class.Route

Methods

toRouteInfo :: RouteInfo -> RouteInfo #

toRouteFun :: (Header sym a -> b) -> ServerFun (MonadOf (Header sym a -> b)) #

FromClient b => FromClient (Header sym a -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (Header sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Header sym a -> b) = a -> ClientResult b

Methods

fromClient :: (Header sym a -> b) -> ClientResult (Header sym a -> b) #

(KnownSymbol sym, ToHttpApiData a, ToClient b) => ToClient (Header sym a -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> Header sym a -> b #

clientArity :: Int #

type ClientResult (Header sym a -> b) 
Instance details

Defined in Mig.Client

type ClientResult (Header sym a -> b) = a -> ClientResult b

newtype PathInfo #

Reads current path info.

"api/foo/bar" ==> PathInfo ["foo", "bar"]

Constructors

PathInfo [Text] 

Instances

Instances details
ToPlugin a => ToPlugin (PathInfo -> a) 
Instance details

Defined in Mig.Core.Class.Plugin

ToRoute b => ToRoute (PathInfo -> b) 
Instance details

Defined in Mig.Core.Class.Route

FromClient b => FromClient (PathInfo -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (PathInfo -> b) 
Instance details

Defined in Mig.Client

Methods

fromClient :: (PathInfo -> b) -> ClientResult (PathInfo -> b) #

ToClient b => ToClient (PathInfo -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> PathInfo -> b #

clientArity :: Int #

type ClientResult (PathInfo -> b) 
Instance details

Defined in Mig.Client

newtype FullPathInfo #

Reads current full-path info with queries.

"api/foo/bar?param=value" ==> FullPathInfo "api/foo/bar?param=value"

Constructors

FullPathInfo Text 

Instances

Instances details
ToPlugin a => ToPlugin (FullPathInfo -> a) 
Instance details

Defined in Mig.Core.Class.Plugin

ToRoute b => ToRoute (FullPathInfo -> b) 
Instance details

Defined in Mig.Core.Class.Route

newtype RawRequest #

Read low-level request. Note that it does not affect the API schema

Constructors

RawRequest Request 

Instances

Instances details
ToPlugin a => ToPlugin (RawRequest -> a) 
Instance details

Defined in Mig.Core.Class.Plugin

ToRoute b => ToRoute (RawRequest -> b) 
Instance details

Defined in Mig.Core.Class.Route

FromClient b => FromClient (RawRequest -> b) 
Instance details

Defined in Mig.Client

Associated Types

type ClientResult (RawRequest -> b) 
Instance details

Defined in Mig.Client

Methods

fromClient :: (RawRequest -> b) -> ClientResult (RawRequest -> b) #

ToClient b => ToClient (RawRequest -> b) 
Instance details

Defined in Mig.Client

Methods

toClient :: forall (m :: Type -> Type). Server m -> RawRequest -> b #

clientArity :: Int #

type ClientResult (RawRequest -> b) 
Instance details

Defined in Mig.Client

response

How to modify response and attach specific info to it

data Resp media a #

Response with info on the media-type encoded as type.

Constructors

Resp 

Fields

Instances

Instances details
Functor (Resp media) 
Instance details

Defined in Mig.Core.Class.Response

Methods

fmap :: (a -> b) -> Resp media a -> Resp media b #

(<$) :: a -> Resp media b -> Resp media a #

Show a => Show (Resp media a) 
Instance details

Defined in Mig.Core.Class.Response

Methods

showsPrec :: Int -> Resp media a -> ShowS #

show :: Resp media a -> String #

showList :: [Resp media a] -> ShowS #

Eq a => Eq (Resp media a) 
Instance details

Defined in Mig.Core.Class.Response

Methods

(==) :: Resp media a -> Resp media a -> Bool #

(/=) :: Resp media a -> Resp media a -> Bool #

ToRespBody ty a => IsResp (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

Associated Types

type RespBody (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespBody (Resp ty a) = a
type RespError (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespError (Resp ty a) = a
type RespMedia (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia (Resp ty a) = ty

Methods

ok :: RespBody (Resp ty a) -> Resp ty a #

bad :: Status -> RespError (Resp ty a) -> Resp ty a #

noContent :: Status -> Resp ty a #

addHeaders :: ResponseHeaders -> Resp ty a -> Resp ty a #

getHeaders :: Resp ty a -> ResponseHeaders #

setStatus :: Status -> Resp ty a -> Resp ty a #

getRespBody :: Resp ty a -> Maybe (RespBody (Resp ty a)) #

getRespError :: Resp ty a -> Maybe (RespError (Resp ty a)) #

getStatus :: Resp ty a -> Status #

setMedia :: MediaType -> Resp ty a -> Resp ty a #

getMedia :: MediaType #

toResponse :: Resp ty a -> Response #

type RespBody (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespBody (Resp ty a) = a
type RespError (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespError (Resp ty a) = a
type RespMedia (Resp ty a) 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia (Resp ty a) = ty

newtype RespOr ty err a #

Response that can contain an error. The error is represented with left case of an Either-type.

Constructors

RespOr 

Fields

Instances

Instances details
Functor (RespOr ty err) 
Instance details

Defined in Mig.Core.Class.Response

Methods

fmap :: (a -> b) -> RespOr ty err a -> RespOr ty err b #

(<$) :: a -> RespOr ty err b -> RespOr ty err a #

(Show err, Show a) => Show (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

Methods

showsPrec :: Int -> RespOr ty err a -> ShowS #

show :: RespOr ty err a -> String #

showList :: [RespOr ty err a] -> ShowS #

(Eq err, Eq a) => Eq (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

Methods

(==) :: RespOr ty err a -> RespOr ty err a -> Bool #

(/=) :: RespOr ty err a -> RespOr ty err a -> Bool #

(ToRespBody ty err, ToRespBody ty a) => IsResp (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

Associated Types

type RespBody (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespBody (RespOr ty err a) = a
type RespError (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespError (RespOr ty err a) = err
type RespMedia (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia (RespOr ty err a) = ty

Methods

ok :: RespBody (RespOr ty err a) -> RespOr ty err a #

bad :: Status -> RespError (RespOr ty err a) -> RespOr ty err a #

noContent :: Status -> RespOr ty err a #

addHeaders :: ResponseHeaders -> RespOr ty err a -> RespOr ty err a #

getHeaders :: RespOr ty err a -> ResponseHeaders #

setStatus :: Status -> RespOr ty err a -> RespOr ty err a #

getRespBody :: RespOr ty err a -> Maybe (RespBody (RespOr ty err a)) #

getRespError :: RespOr ty err a -> Maybe (RespError (RespOr ty err a)) #

getStatus :: RespOr ty err a -> Status #

setMedia :: MediaType -> RespOr ty err a -> RespOr ty err a #

getMedia :: MediaType #

toResponse :: RespOr ty err a -> Response #

type RespBody (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespBody (RespOr ty err a) = a
type RespError (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespError (RespOr ty err a) = err
type RespMedia (RespOr ty err a) 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia (RespOr ty err a) = ty

specific cases

staticFiles :: forall (m :: Type -> Type). MonadIO m => [(FilePath, ByteString)] -> Server m #

Serves static files. The file path is a path to where to server the file. The media-type is derived from the extension. There is a special case if we need to server the file from the rooot of the server we can omit everything from the path but keep extension. Otherwise it is not able to derive the media type.

It is convenient to use it with function embedRecursiveDir from the library file-embed or file-embed-lzma.

Plugins

data Plugin (m :: Type -> Type) #

Plugin can convert all routes of the server. It is wrapper on top of ServerFun m -> ServerFun m. We can apply plugins to servers with applyPlugin function also plugin has Monoid instance which is like Monoid.Endo or functional composition (.).

Constructors

Plugin 

Fields

Instances

Instances details
Monoid (Plugin m) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

mempty :: Plugin m #

mappend :: Plugin m -> Plugin m -> Plugin m #

mconcat :: [Plugin m] -> Plugin m #

Semigroup (Plugin m) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

(<>) :: Plugin m -> Plugin m -> Plugin m #

sconcat :: NonEmpty (Plugin m) -> Plugin m #

stimes :: Integral b => b -> Plugin m -> Plugin m #

MonadIO m => ToPlugin (Plugin m) 
Instance details

Defined in Mig.Core.Class.Plugin

type PluginFun (m :: Type -> Type) = ServerFun m -> ServerFun m #

Low-level plugin function.

class MonadIO (MonadOf f) => ToPlugin f where #

Values that can represent a plugin. We use various newtype-wrappers to query type-safe info from request.

Instances

Instances details
MonadIO m => ToPlugin (Plugin m) 
Instance details

Defined in Mig.Core.Class.Plugin

MonadIO m => ToPlugin (PluginFun m) 
Instance details

Defined in Mig.Core.Class.Plugin

ToPlugin a => ToPlugin (RawResponse -> a) 
Instance details

Defined in Mig.Core.Class.Plugin

(FromReqBody ty a, ToSchema a, ToPlugin b) => ToPlugin (Body ty a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Body ty a -> b) -> ServerFun (MonadOf (Body ty a -> b)) -> ServerFun (MonadOf (Body ty a -> b)) #

(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (Capture sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Capture sym a -> b) -> ServerFun (MonadOf (Capture sym a -> b)) -> ServerFun (MonadOf (Capture sym a -> b)) #

(FromForm a, ToPlugin b) => ToPlugin (Cookie a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Cookie a -> b) -> ServerFun (MonadOf (Cookie a -> b)) -> ServerFun (MonadOf (Cookie a -> b)) #

ToPlugin a => ToPlugin (FullPathInfo -> a) 
Instance details

Defined in Mig.Core.Class.Plugin

(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (Header sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Header sym a -> b) -> ServerFun (MonadOf (Header sym a -> b)) -> ServerFun (MonadOf (Header sym a -> b)) #

ToPlugin a => ToPlugin (IsSecure -> a) 
Instance details

Defined in Mig.Core.Class.Plugin

(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (Optional sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Optional sym a -> b) -> ServerFun (MonadOf (Optional sym a -> b)) -> ServerFun (MonadOf (Optional sym a -> b)) #

(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (OptionalHeader sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

ToPlugin a => ToPlugin (PathInfo -> a) 
Instance details

Defined in Mig.Core.Class.Plugin

(FromHttpApiData a, ToParamSchema a, ToPlugin b, KnownSymbol sym) => ToPlugin (Query sym a -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Query sym a -> b) -> ServerFun (MonadOf (Query sym a -> b)) -> ServerFun (MonadOf (Query sym a -> b)) #

(ToPlugin b, KnownSymbol sym) => ToPlugin (QueryFlag sym -> b) 
Instance details

Defined in Mig.Core.Class.Plugin

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (QueryFlag sym -> b) -> ServerFun (MonadOf (QueryFlag sym -> b)) -> ServerFun (MonadOf (QueryFlag sym -> b)) #

ToPlugin a => ToPlugin (RawRequest -> a) 
Instance details

Defined in Mig.Core.Class.Plugin

(FromJSON a, ToSchema a, ToPlugin b) => ToPlugin (Body a -> b) 
Instance details

Defined in Mig.Extra.Server.Json

Methods

toPluginInfo :: RouteInfo -> RouteInfo #

toPluginFun :: (Body a -> b) -> ServerFun (MonadOf (Body a -> b)) -> ServerFun (MonadOf (Body a -> b)) #

applyPlugin :: ToPlugin f => f -> Server (MonadOf f) -> Server (MonadOf f) #

Applies plugin to all routes of the server.

($:) :: ToPlugin f => f -> Server (MonadOf f) -> Server (MonadOf f) #

Infix operator for applyPlugin

prependServerAction :: MonadIO m => m () -> Plugin m #

Prepends action to the server

appendServerAction :: MonadIO m => m () -> Plugin m #

Post appends action to the server

processResponse :: MonadIO m => (m (Maybe Response) -> m (Maybe Response)) -> Plugin m #

Applies transformation to the response

Low-level types

data Request #

Http request

Instances

Instances details
MonadIO m => ToPlugin (PluginFun m) 
Instance details

Defined in Mig.Core.Class.Plugin

data Response #

Http response

Instances

Instances details
Show Response 
Instance details

Defined in Mig.Core.Types.Http

Eq Response 
Instance details

Defined in Mig.Core.Types.Http

IsResp Response 
Instance details

Defined in Mig.Core.Class.Response

Associated Types

type RespBody Response 
Instance details

Defined in Mig.Core.Class.Response

type RespError Response 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia Response 
Instance details

Defined in Mig.Core.Class.Response

MonadIO m => ToPlugin (PluginFun m) 
Instance details

Defined in Mig.Core.Class.Plugin

type RespBody Response 
Instance details

Defined in Mig.Core.Class.Response

type RespError Response 
Instance details

Defined in Mig.Core.Class.Response

type RespMedia Response 
Instance details

Defined in Mig.Core.Class.Response

okResponse :: forall {k} (mime :: k) a. ToRespBody mime a => a -> Response #

Respond with ok 200-status

badResponse :: forall {k} (mime :: k) a. ToRespBody mime a => Status -> a -> Response #

Bad response qith given status

type ServerFun (m :: Type -> Type) = Request -> m (Maybe Response) #

Low-level representation of the server. Missing route for a given request returns Nothing.

Run server application

data ServerConfig #

Server config

Constructors

ServerConfig 

Fields

Instances

Instances details
Default ServerConfig 
Instance details

Defined in Mig.Server.Wai

Methods

def :: ServerConfig #

data FindRouteType #

Algorithm to find route handlers by path

Constructors

TreeFinder

converts api to tree-like structure (prefer it for servers with many routes)

PlainFinder

no optimization (prefer it for small servers)

data CacheConfig #

Cache config

Constructors

CacheConfig 

Fields

toApplication :: ServerConfig -> Server IO -> Application #

Converts mig server to WAI-application. Note that only IO-based servers are supported. To use custom monad we can use hoistServer function which renders monad to IO based or the class HasServer which defines such transformatio for several useful cases.

Render

Render Reader-IO monad servers to IO servers.

class Monad m => HasServer (m :: Type -> Type) where #

Class contains types which can be converted to IO-based server to run as with WAI-interface.

We can run plain IO-servers and ReaderT over IO based servers. Readers can be wrapped in newtypes. In that case we can derive automatically HasServer instance.

Associated Types

type ServerResult (m :: Type -> Type) #

Instances

Instances details
HasServer IO 
Instance details

Defined in Mig.Core.Class.Server

Associated Types

type ServerResult IO 
Instance details

Defined in Mig.Core.Class.Server

HasServer (ReaderT env IO) 
Instance details

Defined in Mig.Core.Class.Server

Associated Types

type ServerResult (ReaderT env IO) 
Instance details

Defined in Mig.Core.Class.Server

type ServerResult (ReaderT env IO) = env -> Server IO
HasServer (ReaderT env (ExceptT Text IO)) 
Instance details

Defined in Mig.Core.Class.Server

Associated Types

type ServerResult (ReaderT env (ExceptT Text IO)) 
Instance details

Defined in Mig.Core.Class.Server

type ServerResult (ReaderT env (ExceptT Text IO)) = env -> Server IO

fromReader :: env -> Server (ReaderT env IO) -> Server IO #

Render reader server to IO-based server

Convertes

class ToText a where #

Values convertible to lazy text

Methods

toText :: a -> Text #

Instances

Instances details
ToText Text 
Instance details

Defined in Mig.Core.Types.Http

Methods

toText :: Text -> Text #

ToText Text 
Instance details

Defined in Mig.Core.Types.Http

Methods

toText :: Text -> Text #

ToText String 
Instance details

Defined in Mig.Core.Types.Http

Methods

toText :: String -> Text #

ToText Float 
Instance details

Defined in Mig.Core.Types.Http

Methods

toText :: Float -> Text #

ToText Int 
Instance details

Defined in Mig.Core.Types.Http

Methods

toText :: Int -> Text #

utils

badRequest :: forall {k} (media :: k) a. ToRespBody media a => a -> Response #

Bad request response

Server

mapRouteInfo :: forall (m :: Type -> Type). (RouteInfo -> RouteInfo) -> Server m -> Server m #

Maps over route API-information

mapServerFun :: (ServerFun m -> ServerFun n) -> Server m -> Server n #

Applies server function to all routes

mapResponse :: forall (m :: Type -> Type). Functor m => (Response -> Response) -> Server m -> Server m #

Mapps response of the server

atPath :: forall (m :: Type -> Type). Path -> Server m -> Server m #

Sub-server for a server on given path it might be usefule to emulate links from one route to another within the server or reuse part of the server inside another server.

filterPath :: forall (m :: Type -> Type). (Path -> Bool) -> Server m -> Server m #

getServerPaths :: forall (m :: Type -> Type). Server m -> [Path] #

Returns a list of all paths in the server

addPathLink :: forall (m :: Type -> Type). Path -> Path -> Server m -> Server m #

Links one route of the server to another so that every call to first path is redirected to the second path

OpenApi

toOpenApi :: forall (m :: Type -> Type). Server m -> OpenApi #

Reads OpenApi schema for a server

setDescription :: forall (m :: Type -> Type). Text -> Server m -> Server m #

Sets description of the route

describeInputs :: forall (m :: Type -> Type). [(Text, Text)] -> Server m -> Server m #

Appends descriptiton for the inputs. It passes pairs for (input-name, input-description). special name request-body is dedicated to request body input nd raw-input is dedicated to raw input

setSummary :: forall (m :: Type -> Type). Text -> Server m -> Server m #

Sets summary of the route

module Data.Maybe

class Generic a #

Representable types of kind *. This class is derivable in GHC with the DeriveGeneric flag on.

A Generic instance must satisfy the following laws:

from . toid
to . fromid

Minimal complete definition

from, to

Instances

Instances details
Generic Value 
Instance details

Defined in Data.Aeson.Types.Internal

Methods

from :: Value -> Rep Value x #

to :: Rep Value x -> Value #

Generic Version 
Instance details

Defined in Data.Version

Associated Types

type Rep Version

Since: base-4.9.0.0

Instance details

Defined in Data.Version

type Rep Version = D1 ('MetaData "Version" "Data.Version" "base" 'False) (C1 ('MetaCons "Version" 'PrefixI 'True) (S1 ('MetaSel ('Just "versionBranch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Int]) :*: S1 ('MetaSel ('Just "versionTags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [String])))

Methods

from :: Version -> Rep Version x #

to :: Rep Version x -> Version #

Generic Void 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Void

Since: base-4.8.0.0

Instance details

Defined in GHC.Generics

type Rep Void = D1 ('MetaData "Void" "GHC.Base" "base" 'False) (V1 :: Type -> Type)

Methods

from :: Void -> Rep Void x #

to :: Rep Void x -> Void #

Generic ByteOrder 
Instance details

Defined in GHC.ByteOrder

Associated Types

type Rep ByteOrder

Since: base-4.15.0.0

Instance details

Defined in GHC.ByteOrder

type Rep ByteOrder = D1 ('MetaData "ByteOrder" "GHC.ByteOrder" "base" 'False) (C1 ('MetaCons "BigEndian" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LittleEndian" 'PrefixI 'False) (U1 :: Type -> Type))
Generic Fingerprint 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Fingerprint

Since: base-4.15.0.0

Instance details

Defined in GHC.Generics

type Rep Fingerprint = D1 ('MetaData "Fingerprint" "GHC.Fingerprint.Type" "base" 'False) (C1 ('MetaCons "Fingerprint" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 Word64) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 Word64)))
Generic Associativity 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Associativity

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

type Rep Associativity = D1 ('MetaData "Associativity" "GHC.Generics" "base" 'False) (C1 ('MetaCons "LeftAssociative" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "RightAssociative" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NotAssociative" 'PrefixI 'False) (U1 :: Type -> Type)))
Generic DecidedStrictness 
Instance details

Defined in GHC.Generics

Associated Types

type Rep DecidedStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep DecidedStrictness = D1 ('MetaData "DecidedStrictness" "GHC.Generics" "base" 'False) (C1 ('MetaCons "DecidedLazy" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "DecidedStrict" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DecidedUnpack" 'PrefixI 'False) (U1 :: Type -> Type)))
Generic Fixity 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Fixity

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

from :: Fixity -> Rep Fixity x #

to :: Rep Fixity x -> Fixity #

Generic SourceStrictness 
Instance details

Defined in GHC.Generics

Associated Types

type Rep SourceStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep SourceStrictness = D1 ('MetaData "SourceStrictness" "GHC.Generics" "base" 'False) (C1 ('MetaCons "NoSourceStrictness" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SourceLazy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SourceStrict" 'PrefixI 'False) (U1 :: Type -> Type)))
Generic SourceUnpackedness 
Instance details

Defined in GHC.Generics

Associated Types

type Rep SourceUnpackedness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep SourceUnpackedness = D1 ('MetaData "SourceUnpackedness" "GHC.Generics" "base" 'False) (C1 ('MetaCons "NoSourceUnpackedness" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SourceNoUnpack" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SourceUnpack" 'PrefixI 'False) (U1 :: Type -> Type)))
Generic ExitCode 
Instance details

Defined in GHC.IO.Exception

Associated Types

type Rep ExitCode 
Instance details

Defined in GHC.IO.Exception

type Rep ExitCode = D1 ('MetaData "ExitCode" "GHC.IO.Exception" "base" 'False) (C1 ('MetaCons "ExitSuccess" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ExitFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

Methods

from :: ExitCode -> Rep ExitCode x #

to :: Rep ExitCode x -> ExitCode #

Generic CCFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep CCFlags

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

Methods

from :: CCFlags -> Rep CCFlags x #

to :: Rep CCFlags x -> CCFlags #

Generic ConcFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep ConcFlags

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep ConcFlags = D1 ('MetaData "ConcFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "ConcFlags" 'PrefixI 'True) (S1 ('MetaSel ('Just "ctxtSwitchTime") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "ctxtSwitchTicks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))
Generic DebugFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep DebugFlags

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep DebugFlags = D1 ('MetaData "DebugFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "DebugFlags" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "scheduler") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "interpreter") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "weak") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "gccafs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :*: ((S1 ('MetaSel ('Just "gc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "nonmoving_gc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "block_alloc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "sanity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) :*: (((S1 ('MetaSel ('Just "stable") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "prof") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "linker") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "apply") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :*: ((S1 ('MetaSel ('Just "stm") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "squeeze") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "hpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "sparks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))))))
Generic DoCostCentres 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep DoCostCentres

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep DoCostCentres = D1 ('MetaData "DoCostCentres" "GHC.RTS.Flags" "base" 'False) ((C1 ('MetaCons "CostCentresNone" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CostCentresSummary" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "CostCentresVerbose" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "CostCentresAll" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CostCentresJSON" 'PrefixI 'False) (U1 :: Type -> Type))))
Generic DoHeapProfile 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep DoHeapProfile

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep DoHeapProfile = D1 ('MetaData "DoHeapProfile" "GHC.RTS.Flags" "base" 'False) (((C1 ('MetaCons "NoHeapProfiling" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "HeapByCCS" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "HeapByMod" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "HeapByDescr" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "HeapByType" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "HeapByRetainer" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "HeapByLDV" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "HeapByClosureType" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "HeapByInfoTable" 'PrefixI 'False) (U1 :: Type -> Type)))))
Generic DoTrace 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep DoTrace

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep DoTrace = D1 ('MetaData "DoTrace" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "TraceNone" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "TraceEventLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TraceStderr" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: DoTrace -> Rep DoTrace x #

to :: Rep DoTrace x -> DoTrace #

Generic GCFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep GCFlags

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep GCFlags = D1 ('MetaData "GCFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "GCFlags" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "statsFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath)) :*: (S1 ('MetaSel ('Just "giveStats") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GiveGCStats) :*: S1 ('MetaSel ('Just "maxStkSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32))) :*: ((S1 ('MetaSel ('Just "initialStkSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "stkChunkSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "stkChunkBufferSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "maxHeapSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)))) :*: ((S1 ('MetaSel ('Just "minAllocAreaSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: (S1 ('MetaSel ('Just "largeAllocLim") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "nurseryChunkSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32))) :*: ((S1 ('MetaSel ('Just "minOldGenSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "heapSizeSuggestion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "heapSizeSuggestionAuto") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "oldGenFactor") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double))))) :*: (((S1 ('MetaSel ('Just "returnDecayFactor") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double) :*: (S1 ('MetaSel ('Just "pcFreeHeap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double) :*: S1 ('MetaSel ('Just "generations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32))) :*: ((S1 ('MetaSel ('Just "squeezeUpdFrames") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "compact") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "compactThreshold") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double) :*: S1 ('MetaSel ('Just "sweep") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) :*: ((S1 ('MetaSel ('Just "ringBell") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "idleGCDelayTime") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "doIdleGC") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :*: ((S1 ('MetaSel ('Just "heapBase") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word) :*: S1 ('MetaSel ('Just "allocLimitGrace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word)) :*: (S1 ('MetaSel ('Just "numa") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "numaMask") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word)))))))

Methods

from :: GCFlags -> Rep GCFlags x #

to :: Rep GCFlags x -> GCFlags #

Generic GiveGCStats 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep GiveGCStats

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep GiveGCStats = D1 ('MetaData "GiveGCStats" "GHC.RTS.Flags" "base" 'False) ((C1 ('MetaCons "NoGCStats" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CollectGCStats" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "OneLineGCStats" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SummaryGCStats" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "VerboseGCStats" 'PrefixI 'False) (U1 :: Type -> Type))))
Generic MiscFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep MiscFlags

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep MiscFlags = D1 ('MetaData "MiscFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "MiscFlags" 'PrefixI 'True) (((S1 ('MetaSel ('Just "tickInterval") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: (S1 ('MetaSel ('Just "installSignalHandlers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "installSEHHandlers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :*: (S1 ('MetaSel ('Just "generateCrashDumpFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "generateStackTrace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "machineReadable") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))) :*: ((S1 ('MetaSel ('Just "disableDelayedOsMemoryReturn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "internalCounters") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "linkerAlwaysPic") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :*: (S1 ('MetaSel ('Just "linkerMemBase") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word) :*: (S1 ('MetaSel ('Just "ioManager") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IoSubSystem) :*: S1 ('MetaSel ('Just "numIoWorkerThreads") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32))))))
Generic ParFlags 
Instance details

Defined in GHC.RTS.Flags

Methods

from :: ParFlags -> Rep ParFlags x #

to :: Rep ParFlags x -> ParFlags #

Generic ProfFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep ProfFlags

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep ProfFlags = D1 ('MetaData "ProfFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "ProfFlags" 'PrefixI 'True) (((S1 ('MetaSel ('Just "doHeapProfile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DoHeapProfile) :*: (S1 ('MetaSel ('Just "heapProfileInterval") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "heapProfileIntervalTicks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word))) :*: ((S1 ('MetaSel ('Just "startHeapProfileAtStartup") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "showCCSOnException") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "maxRetainerSetSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word) :*: S1 ('MetaSel ('Just "ccsLength") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word)))) :*: ((S1 ('MetaSel ('Just "modSelector") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: (S1 ('MetaSel ('Just "descrSelector") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "typeSelector") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))) :*: ((S1 ('MetaSel ('Just "ccSelector") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "ccsSelector") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String))) :*: (S1 ('MetaSel ('Just "retainerSelector") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Just "bioSelector") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe String)))))))
Generic RTSFlags 
Instance details

Defined in GHC.RTS.Flags

Methods

from :: RTSFlags -> Rep RTSFlags x #

to :: Rep RTSFlags x -> RTSFlags #

Generic TickyFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep TickyFlags

Since: base-4.15.0.0

Instance details

Defined in GHC.RTS.Flags

type Rep TickyFlags = D1 ('MetaData "TickyFlags" "GHC.RTS.Flags" "base" 'False) (C1 ('MetaCons "TickyFlags" 'PrefixI 'True) (S1 ('MetaSel ('Just "showTickyStats") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Just "tickyFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath))))
Generic TraceFlags 
Instance details

Defined in GHC.RTS.Flags

Generic SrcLoc 
Instance details

Defined in GHC.Generics

Associated Types

type Rep SrcLoc

Since: base-4.15.0.0

Instance details

Defined in GHC.Generics

Methods

from :: SrcLoc -> Rep SrcLoc x #

to :: Rep SrcLoc x -> SrcLoc #

Generic GCDetails 
Instance details

Defined in GHC.Stats

Associated Types

type Rep GCDetails

Since: base-4.15.0.0

Instance details

Defined in GHC.Stats

type Rep GCDetails = D1 ('MetaData "GCDetails" "GHC.Stats" "base" 'False) (C1 ('MetaCons "GCDetails" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "gcdetails_gen") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "gcdetails_threads") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "gcdetails_allocated_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_live_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "gcdetails_large_objects_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_compact_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "gcdetails_slop_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_mem_in_use_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))) :*: (((S1 ('MetaSel ('Just "gcdetails_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_par_max_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "gcdetails_par_balanced_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_block_fragmentation_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "gcdetails_sync_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "gcdetails_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)) :*: (S1 ('MetaSel ('Just "gcdetails_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: (S1 ('MetaSel ('Just "gcdetails_nonmoving_gc_sync_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "gcdetails_nonmoving_gc_sync_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)))))))
Generic RTSStats 
Instance details

Defined in GHC.Stats

Associated Types

type Rep RTSStats

Since: base-4.15.0.0

Instance details

Defined in GHC.Stats

type Rep RTSStats = D1 ('MetaData "RTSStats" "GHC.Stats" "base" 'False) (C1 ('MetaCons "RTSStats" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "gcs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: (S1 ('MetaSel ('Just "major_gcs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "allocated_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "max_live_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "max_large_objects_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "max_compact_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "max_slop_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))) :*: ((S1 ('MetaSel ('Just "max_mem_in_use_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: (S1 ('MetaSel ('Just "cumulative_live_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "par_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "cumulative_par_max_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "cumulative_par_balanced_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "init_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime))))) :*: (((S1 ('MetaSel ('Just "init_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: (S1 ('MetaSel ('Just "mutator_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "mutator_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime))) :*: ((S1 ('MetaSel ('Just "gc_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "gc_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)) :*: (S1 ('MetaSel ('Just "cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)))) :*: ((S1 ('MetaSel ('Just "nonmoving_gc_sync_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: (S1 ('MetaSel ('Just "nonmoving_gc_sync_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "nonmoving_gc_sync_max_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime))) :*: ((S1 ('MetaSel ('Just "nonmoving_gc_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "nonmoving_gc_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)) :*: (S1 ('MetaSel ('Just "nonmoving_gc_max_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "gc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GCDetails)))))))

Methods

from :: RTSStats -> Rep RTSStats x #

to :: Rep RTSStats x -> RTSStats #

Generic GeneralCategory 
Instance details

Defined in GHC.Generics

Associated Types

type Rep GeneralCategory

Since: base-4.15.0.0

Instance details

Defined in GHC.Generics

type Rep GeneralCategory = D1 ('MetaData "GeneralCategory" "GHC.Unicode" "base" 'False) ((((C1 ('MetaCons "UppercaseLetter" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "LowercaseLetter" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TitlecaseLetter" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "ModifierLetter" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OtherLetter" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "NonSpacingMark" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SpacingCombiningMark" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "EnclosingMark" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DecimalNumber" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LetterNumber" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OtherNumber" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "ConnectorPunctuation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DashPunctuation" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "OpenPunctuation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ClosePunctuation" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "InitialQuote" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "FinalQuote" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OtherPunctuation" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "MathSymbol" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CurrencySymbol" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ModifierSymbol" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OtherSymbol" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "Space" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LineSeparator" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ParagraphSeparator" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Control" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Format" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Surrogate" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "PrivateUse" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NotAssigned" 'PrefixI 'False) (U1 :: Type -> Type))))))
Generic Ordering 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Ordering

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep Ordering = D1 ('MetaData "Ordering" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "LT" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "EQ" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GT" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: Ordering -> Rep Ordering x #

to :: Rep Ordering x -> Ordering #

Generic Form 
Instance details

Defined in Web.Internal.FormUrlEncoded

Associated Types

type Rep Form 
Instance details

Defined in Web.Internal.FormUrlEncoded

type Rep Form = D1 ('MetaData "Form" "Web.Internal.FormUrlEncoded" "http-api-data-0.7-AAOgjZCP5SaIWzFFL7vqwj" 'True) (C1 ('MetaCons "Form" 'PrefixI 'True) (S1 ('MetaSel ('Just "unForm") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map Text [Text]))))

Methods

from :: Form -> Rep Form x #

to :: Rep Form x -> Form #

Generic ByteRange 
Instance details

Defined in Network.HTTP.Types.Header

Associated Types

type Rep ByteRange

Since: http-types-0.12.4

Instance details

Defined in Network.HTTP.Types.Header

Generic StdMethod 
Instance details

Defined in Network.HTTP.Types.Method

Associated Types

type Rep StdMethod

Since: http-types-0.12.4

Instance details

Defined in Network.HTTP.Types.Method

type Rep StdMethod = D1 ('MetaData "StdMethod" "Network.HTTP.Types.Method" "http-types-0.12.4-DyHSSN1lzZA9QYfuuQO4ZO" 'False) (((C1 ('MetaCons "GET" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "POST" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "HEAD" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PUT" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "DELETE" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TRACE" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "CONNECT" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "OPTIONS" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PATCH" 'PrefixI 'False) (U1 :: Type -> Type)))))
Generic Status 
Instance details

Defined in Network.HTTP.Types.Status

Associated Types

type Rep Status

Since: http-types-0.12.4

Instance details

Defined in Network.HTTP.Types.Status

type Rep Status = D1 ('MetaData "Status" "Network.HTTP.Types.Status" "http-types-0.12.4-DyHSSN1lzZA9QYfuuQO4ZO" 'False) (C1 ('MetaCons "Status" 'PrefixI 'True) (S1 ('MetaSel ('Just "statusCode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Just "statusMessage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ByteString)))

Methods

from :: Status -> Rep Status x #

to :: Rep Status x -> Status #

Generic HttpVersion 
Instance details

Defined in Network.HTTP.Types.Version

Associated Types

type Rep HttpVersion

Since: http-types-0.12.4

Instance details

Defined in Network.HTTP.Types.Version

type Rep HttpVersion = D1 ('MetaData "HttpVersion" "Network.HTTP.Types.Version" "http-types-0.12.4-DyHSSN1lzZA9QYfuuQO4ZO" 'False) (C1 ('MetaCons "HttpVersion" 'PrefixI 'True) (S1 ('MetaSel ('Just "httpMajor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "httpMinor") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)))
Generic IP 
Instance details

Defined in Data.IP.Addr

Associated Types

type Rep IP 
Instance details

Defined in Data.IP.Addr

type Rep IP = D1 ('MetaData "IP" "Data.IP.Addr" "iproute-1.7.15-6WBgaJFy1dA8RDxUp3zrjZ" 'False) (C1 ('MetaCons "IPv4" 'PrefixI 'True) (S1 ('MetaSel ('Just "ipv4") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 IPv4)) :+: C1 ('MetaCons "IPv6" 'PrefixI 'True) (S1 ('MetaSel ('Just "ipv6") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 IPv6)))

Methods

from :: IP -> Rep IP x #

to :: Rep IP x -> IP #

Generic IPv4 
Instance details

Defined in Data.IP.Addr

Associated Types

type Rep IPv4 
Instance details

Defined in Data.IP.Addr

type Rep IPv4 = D1 ('MetaData "IPv4" "Data.IP.Addr" "iproute-1.7.15-6WBgaJFy1dA8RDxUp3zrjZ" 'True) (C1 ('MetaCons "IP4" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IPv4Addr)))

Methods

from :: IPv4 -> Rep IPv4 x #

to :: Rep IPv4 x -> IPv4 #

Generic IPv6 
Instance details

Defined in Data.IP.Addr

Associated Types

type Rep IPv6 
Instance details

Defined in Data.IP.Addr

type Rep IPv6 = D1 ('MetaData "IPv6" "Data.IP.Addr" "iproute-1.7.15-6WBgaJFy1dA8RDxUp3zrjZ" 'True) (C1 ('MetaCons "IP6" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IPv6Addr)))

Methods

from :: IPv6 -> Rep IPv6 x #

to :: Rep IPv6 x -> IPv6 #

Generic IPRange 
Instance details

Defined in Data.IP.Range

Associated Types

type Rep IPRange 
Instance details

Defined in Data.IP.Range

type Rep IPRange = D1 ('MetaData "IPRange" "Data.IP.Range" "iproute-1.7.15-6WBgaJFy1dA8RDxUp3zrjZ" 'False) (C1 ('MetaCons "IPv4Range" 'PrefixI 'True) (S1 ('MetaSel ('Just "ipv4range") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (AddrRange IPv4))) :+: C1 ('MetaCons "IPv6Range" 'PrefixI 'True) (S1 ('MetaSel ('Just "ipv6range") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (AddrRange IPv6))))

Methods

from :: IPRange -> Rep IPRange x #

to :: Rep IPRange x -> IPRange #

Generic Link 
Instance details

Defined in Mig.Extra.Server.Html

Associated Types

type Rep Link 
Instance details

Defined in Mig.Extra.Server.Html

type Rep Link = D1 ('MetaData "Link" "Mig.Extra.Server.Html" "mig-extra-0.1.1.0-1jLJ1XPbupK5TM2PmYBc4Z" 'False) (C1 ('MetaCons "Link" 'PrefixI 'True) (S1 ('MetaSel ('Just "href") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Url) :*: S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

Methods

from :: Link -> Rep Link x #

to :: Rep Link x -> Link #

Generic URI 
Instance details

Defined in Network.URI

Associated Types

type Rep URI 
Instance details

Defined in Network.URI

Methods

from :: URI -> Rep URI x #

to :: Rep URI x -> URI #

Generic URIAuth 
Instance details

Defined in Network.URI

Associated Types

type Rep URIAuth 
Instance details

Defined in Network.URI

type Rep URIAuth = D1 ('MetaData "URIAuth" "Network.URI" "network-uri-2.6.4.2-9dfGMfPiC12BvsnaeenaXD" 'False) (C1 ('MetaCons "URIAuth" 'PrefixI 'True) (S1 ('MetaSel ('Just "uriUserInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Just "uriRegName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "uriPort") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))

Methods

from :: URIAuth -> Rep URIAuth x #

to :: Rep URIAuth x -> URIAuth #

Generic ApiKeyLocation 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep ApiKeyLocation 
Instance details

Defined in Data.OpenApi.Internal

type Rep ApiKeyLocation = D1 ('MetaData "ApiKeyLocation" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "ApiKeyQuery" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ApiKeyHeader" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ApiKeyCookie" 'PrefixI 'False) (U1 :: Type -> Type)))
Generic ApiKeyParams 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep ApiKeyParams 
Instance details

Defined in Data.OpenApi.Internal

type Rep ApiKeyParams = D1 ('MetaData "ApiKeyParams" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "ApiKeyParams" 'PrefixI 'True) (S1 ('MetaSel ('Just "_apiKeyName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "_apiKeyIn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ApiKeyLocation)))
Generic Callback 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Callback 
Instance details

Defined in Data.OpenApi.Internal

type Rep Callback = D1 ('MetaData "Callback" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'True) (C1 ('MetaCons "Callback" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text PathItem))))

Methods

from :: Callback -> Rep Callback x #

to :: Rep Callback x -> Callback #

Generic Components 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Components 
Instance details

Defined in Data.OpenApi.Internal

Generic Contact 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Contact 
Instance details

Defined in Data.OpenApi.Internal

type Rep Contact = D1 ('MetaData "Contact" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Contact" 'PrefixI 'True) (S1 ('MetaSel ('Just "_contactName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "_contactUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe URL)) :*: S1 ('MetaSel ('Just "_contactEmail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)))))

Methods

from :: Contact -> Rep Contact x #

to :: Rep Contact x -> Contact #

Generic Discriminator 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Discriminator 
Instance details

Defined in Data.OpenApi.Internal

type Rep Discriminator = D1 ('MetaData "Discriminator" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Discriminator" 'PrefixI 'True) (S1 ('MetaSel ('Just "_discriminatorPropertyName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "_discriminatorMapping") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text Text))))
Generic Encoding 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Encoding 
Instance details

Defined in Data.OpenApi.Internal

type Rep Encoding = D1 ('MetaData "Encoding" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Encoding" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_encodingContentType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe MediaType)) :*: S1 ('MetaSel ('Just "_encodingHeaders") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text (Referenced Header)))) :*: (S1 ('MetaSel ('Just "_encodingStyle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Style)) :*: (S1 ('MetaSel ('Just "_encodingExplode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "_encodingAllowReserved") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool))))))

Methods

from :: Encoding -> Rep Encoding x #

to :: Rep Encoding x -> Encoding #

Generic Example 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Example 
Instance details

Defined in Data.OpenApi.Internal

type Rep Example = D1 ('MetaData "Example" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Example" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_exampleSummary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_exampleDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "_exampleValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Value)) :*: S1 ('MetaSel ('Just "_exampleExternalValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe URL)))))

Methods

from :: Example -> Rep Example x #

to :: Rep Example x -> Example #

Generic ExpressionOrValue 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep ExpressionOrValue 
Instance details

Defined in Data.OpenApi.Internal

type Rep ExpressionOrValue = D1 ('MetaData "ExpressionOrValue" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Expression" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)) :+: C1 ('MetaCons "Value" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Value)))
Generic ExternalDocs 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep ExternalDocs 
Instance details

Defined in Data.OpenApi.Internal

type Rep ExternalDocs = D1 ('MetaData "ExternalDocs" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "ExternalDocs" 'PrefixI 'True) (S1 ('MetaSel ('Just "_externalDocsDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_externalDocsUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 URL)))
Generic Header 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Header 
Instance details

Defined in Data.OpenApi.Internal

Methods

from :: Header -> Rep Header x #

to :: Rep Header x -> Header #

Generic HttpSchemeType 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep HttpSchemeType 
Instance details

Defined in Data.OpenApi.Internal

type Rep HttpSchemeType = D1 ('MetaData "HttpSchemeType" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "HttpSchemeBearer" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe BearerFormat))) :+: (C1 ('MetaCons "HttpSchemeBasic" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "HttpSchemeCustom" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))))
Generic Info 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Info 
Instance details

Defined in Data.OpenApi.Internal

type Rep Info = D1 ('MetaData "Info" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Info" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_infoTitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_infoDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_infoTermsOfService") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)))) :*: (S1 ('MetaSel ('Just "_infoContact") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Contact)) :*: (S1 ('MetaSel ('Just "_infoLicense") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe License)) :*: S1 ('MetaSel ('Just "_infoVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))))

Methods

from :: Info -> Rep Info x #

to :: Rep Info x -> Info #

Generic License 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep License 
Instance details

Defined in Data.OpenApi.Internal

type Rep License = D1 ('MetaData "License" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "License" 'PrefixI 'True) (S1 ('MetaSel ('Just "_licenseName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "_licenseUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe URL))))

Methods

from :: License -> Rep License x #

to :: Rep License x -> License #

Generic Link 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Link 
Instance details

Defined in Data.OpenApi.Internal

Methods

from :: Link -> Rep Link x #

to :: Rep Link x -> Link #

Generic MediaTypeObject 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep MediaTypeObject 
Instance details

Defined in Data.OpenApi.Internal

type Rep MediaTypeObject = D1 ('MetaData "MediaTypeObject" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "MediaTypeObject" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_mediaTypeObjectSchema") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Referenced Schema))) :*: S1 ('MetaSel ('Just "_mediaTypeObjectExample") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Value))) :*: (S1 ('MetaSel ('Just "_mediaTypeObjectExamples") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text (Referenced Example))) :*: S1 ('MetaSel ('Just "_mediaTypeObjectEncoding") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text Encoding)))))
Generic NamedSchema 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep NamedSchema 
Instance details

Defined in Data.OpenApi.Internal

type Rep NamedSchema = D1 ('MetaData "NamedSchema" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "NamedSchema" 'PrefixI 'True) (S1 ('MetaSel ('Just "_namedSchemaName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_namedSchemaSchema") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Schema)))
Generic OAuth2AuthorizationCodeFlow 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep OAuth2AuthorizationCodeFlow 
Instance details

Defined in Data.OpenApi.Internal

type Rep OAuth2AuthorizationCodeFlow = D1 ('MetaData "OAuth2AuthorizationCodeFlow" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "OAuth2AuthorizationCodeFlow" 'PrefixI 'True) (S1 ('MetaSel ('Just "_oAuth2AuthorizationCodeFlowAuthorizationUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AuthorizationURL) :*: S1 ('MetaSel ('Just "_oAuth2AuthorizationCodeFlowTokenUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TokenURL)))
Generic OAuth2ClientCredentialsFlow 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep OAuth2ClientCredentialsFlow 
Instance details

Defined in Data.OpenApi.Internal

type Rep OAuth2ClientCredentialsFlow = D1 ('MetaData "OAuth2ClientCredentialsFlow" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'True) (C1 ('MetaCons "OAuth2ClientCredentialsFlow" 'PrefixI 'True) (S1 ('MetaSel ('Just "_oAuth2ClientCredentialsFlowTokenUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TokenURL)))
Generic OAuth2Flows 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep OAuth2Flows 
Instance details

Defined in Data.OpenApi.Internal

type Rep OAuth2Flows = D1 ('MetaData "OAuth2Flows" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "OAuth2Flows" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_oAuth2FlowsImplicit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (OAuth2Flow OAuth2ImplicitFlow))) :*: S1 ('MetaSel ('Just "_oAuth2FlowsPassword") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (OAuth2Flow OAuth2PasswordFlow)))) :*: (S1 ('MetaSel ('Just "_oAuth2FlowsClientCredentials") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (OAuth2Flow OAuth2ClientCredentialsFlow))) :*: S1 ('MetaSel ('Just "_oAuth2FlowsAuthorizationCode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (OAuth2Flow OAuth2AuthorizationCodeFlow))))))
Generic OAuth2ImplicitFlow 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep OAuth2ImplicitFlow 
Instance details

Defined in Data.OpenApi.Internal

type Rep OAuth2ImplicitFlow = D1 ('MetaData "OAuth2ImplicitFlow" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'True) (C1 ('MetaCons "OAuth2ImplicitFlow" 'PrefixI 'True) (S1 ('MetaSel ('Just "_oAuth2ImplicitFlowAuthorizationUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AuthorizationURL)))
Generic OAuth2PasswordFlow 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep OAuth2PasswordFlow 
Instance details

Defined in Data.OpenApi.Internal

type Rep OAuth2PasswordFlow = D1 ('MetaData "OAuth2PasswordFlow" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'True) (C1 ('MetaCons "OAuth2PasswordFlow" 'PrefixI 'True) (S1 ('MetaSel ('Just "_oAuth2PasswordFlowTokenUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TokenURL)))
Generic OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Methods

from :: OpenApi -> Rep OpenApi x #

to :: Rep OpenApi x -> OpenApi #

Generic OpenApiSpecVersion 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep OpenApiSpecVersion 
Instance details

Defined in Data.OpenApi.Internal

type Rep OpenApiSpecVersion = D1 ('MetaData "OpenApiSpecVersion" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'True) (C1 ('MetaCons "OpenApiSpecVersion" 'PrefixI 'True) (S1 ('MetaSel ('Just "getVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Version)))
Generic OpenApiType 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep OpenApiType 
Instance details

Defined in Data.OpenApi.Internal

type Rep OpenApiType = D1 ('MetaData "OpenApiType" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) ((C1 ('MetaCons "OpenApiString" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "OpenApiNumber" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OpenApiInteger" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "OpenApiBoolean" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OpenApiArray" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "OpenApiNull" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OpenApiObject" 'PrefixI 'False) (U1 :: Type -> Type))))
Generic Operation 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Operation 
Instance details

Defined in Data.OpenApi.Internal

type Rep Operation = D1 ('MetaData "Operation" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Operation" 'PrefixI 'True) (((S1 ('MetaSel ('Just "_operationTags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashSet TagName)) :*: (S1 ('MetaSel ('Just "_operationSummary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_operationDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)))) :*: (S1 ('MetaSel ('Just "_operationExternalDocs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ExternalDocs)) :*: (S1 ('MetaSel ('Just "_operationOperationId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_operationParameters") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Referenced Param])))) :*: ((S1 ('MetaSel ('Just "_operationRequestBody") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Referenced RequestBody))) :*: (S1 ('MetaSel ('Just "_operationResponses") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Responses) :*: S1 ('MetaSel ('Just "_operationCallbacks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text (Referenced Callback))))) :*: (S1 ('MetaSel ('Just "_operationDeprecated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "_operationSecurity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [SecurityRequirement]) :*: S1 ('MetaSel ('Just "_operationServers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Server]))))))
Generic Param 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Param 
Instance details

Defined in Data.OpenApi.Internal

type Rep Param = D1 ('MetaData "Param" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Param" 'PrefixI 'True) (((S1 ('MetaSel ('Just "_paramName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_paramDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_paramRequired") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)))) :*: (S1 ('MetaSel ('Just "_paramDeprecated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "_paramIn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ParamLocation) :*: S1 ('MetaSel ('Just "_paramAllowEmptyValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool))))) :*: ((S1 ('MetaSel ('Just "_paramAllowReserved") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "_paramSchema") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Referenced Schema))) :*: S1 ('MetaSel ('Just "_paramStyle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Style)))) :*: (S1 ('MetaSel ('Just "_paramExplode") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "_paramExample") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Value)) :*: S1 ('MetaSel ('Just "_paramExamples") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text (Referenced Example))))))))

Methods

from :: Param -> Rep Param x #

to :: Rep Param x -> Param #

Generic ParamLocation 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep ParamLocation 
Instance details

Defined in Data.OpenApi.Internal

type Rep ParamLocation = D1 ('MetaData "ParamLocation" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) ((C1 ('MetaCons "ParamQuery" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ParamHeader" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ParamPath" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ParamCookie" 'PrefixI 'False) (U1 :: Type -> Type)))
Generic PathItem 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep PathItem 
Instance details

Defined in Data.OpenApi.Internal

type Rep PathItem = D1 ('MetaData "PathItem" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "PathItem" 'PrefixI 'True) (((S1 ('MetaSel ('Just "_pathItemSummary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "_pathItemDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_pathItemGet") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Operation)))) :*: (S1 ('MetaSel ('Just "_pathItemPut") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Operation)) :*: (S1 ('MetaSel ('Just "_pathItemPost") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Operation)) :*: S1 ('MetaSel ('Just "_pathItemDelete") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Operation))))) :*: ((S1 ('MetaSel ('Just "_pathItemOptions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Operation)) :*: (S1 ('MetaSel ('Just "_pathItemHead") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Operation)) :*: S1 ('MetaSel ('Just "_pathItemPatch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Operation)))) :*: (S1 ('MetaSel ('Just "_pathItemTrace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Operation)) :*: (S1 ('MetaSel ('Just "_pathItemServers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Server]) :*: S1 ('MetaSel ('Just "_pathItemParameters") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Referenced Param]))))))

Methods

from :: PathItem -> Rep PathItem x #

to :: Rep PathItem x -> PathItem #

Generic RequestBody 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep RequestBody 
Instance details

Defined in Data.OpenApi.Internal

type Rep RequestBody = D1 ('MetaData "RequestBody" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "RequestBody" 'PrefixI 'True) (S1 ('MetaSel ('Just "_requestBodyDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "_requestBodyContent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap MediaType MediaTypeObject)) :*: S1 ('MetaSel ('Just "_requestBodyRequired") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)))))
Generic Response 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Response 
Instance details

Defined in Data.OpenApi.Internal

type Rep Response = D1 ('MetaData "Response" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Response" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_responseDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "_responseContent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap MediaType MediaTypeObject))) :*: (S1 ('MetaSel ('Just "_responseHeaders") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap HeaderName (Referenced Header))) :*: S1 ('MetaSel ('Just "_responseLinks") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text (Referenced Link))))))

Methods

from :: Response -> Rep Response x #

to :: Rep Response x -> Response #

Generic Responses 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Responses 
Instance details

Defined in Data.OpenApi.Internal

type Rep Responses = D1 ('MetaData "Responses" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Responses" 'PrefixI 'True) (S1 ('MetaSel ('Just "_responsesDefault") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Referenced Response))) :*: S1 ('MetaSel ('Just "_responsesResponses") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap HttpStatusCode (Referenced Response)))))
Generic Schema 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Schema 
Instance details

Defined in Data.OpenApi.Internal

type Rep Schema = D1 ('MetaData "Schema" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Schema" 'PrefixI 'True) (((((S1 ('MetaSel ('Just "_schemaTitle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_schemaDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "_schemaRequired") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [ParamName]) :*: S1 ('MetaSel ('Just "_schemaNullable") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)))) :*: ((S1 ('MetaSel ('Just "_schemaAllOf") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe [Referenced Schema])) :*: S1 ('MetaSel ('Just "_schemaOneOf") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe [Referenced Schema]))) :*: (S1 ('MetaSel ('Just "_schemaNot") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Referenced Schema))) :*: S1 ('MetaSel ('Just "_schemaAnyOf") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe [Referenced Schema]))))) :*: (((S1 ('MetaSel ('Just "_schemaProperties") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text (Referenced Schema))) :*: S1 ('MetaSel ('Just "_schemaAdditionalProperties") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AdditionalProperties))) :*: (S1 ('MetaSel ('Just "_schemaDiscriminator") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Discriminator)) :*: S1 ('MetaSel ('Just "_schemaReadOnly") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)))) :*: ((S1 ('MetaSel ('Just "_schemaWriteOnly") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "_schemaXml") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Xml))) :*: (S1 ('MetaSel ('Just "_schemaExternalDocs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ExternalDocs)) :*: (S1 ('MetaSel ('Just "_schemaExample") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Value)) :*: S1 ('MetaSel ('Just "_schemaDeprecated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool))))))) :*: ((((S1 ('MetaSel ('Just "_schemaMaxProperties") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Integer)) :*: S1 ('MetaSel ('Just "_schemaMinProperties") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Integer))) :*: (S1 ('MetaSel ('Just "_schemaDefault") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Value)) :*: S1 ('MetaSel ('Just "_schemaType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe OpenApiType)))) :*: ((S1 ('MetaSel ('Just "_schemaFormat") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Format)) :*: S1 ('MetaSel ('Just "_schemaItems") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe OpenApiItems))) :*: (S1 ('MetaSel ('Just "_schemaMaximum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Scientific)) :*: (S1 ('MetaSel ('Just "_schemaExclusiveMaximum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "_schemaMinimum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Scientific)))))) :*: (((S1 ('MetaSel ('Just "_schemaExclusiveMinimum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "_schemaMaxLength") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Integer))) :*: (S1 ('MetaSel ('Just "_schemaMinLength") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Integer)) :*: S1 ('MetaSel ('Just "_schemaPattern") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Pattern)))) :*: ((S1 ('MetaSel ('Just "_schemaMaxItems") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Integer)) :*: S1 ('MetaSel ('Just "_schemaMinItems") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Integer))) :*: (S1 ('MetaSel ('Just "_schemaUniqueItems") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "_schemaEnum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe [Value])) :*: S1 ('MetaSel ('Just "_schemaMultipleOf") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Scientific)))))))))

Methods

from :: Schema -> Rep Schema x #

to :: Rep Schema x -> Schema #

Generic SecurityDefinitions 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep SecurityDefinitions 
Instance details

Defined in Data.OpenApi.Internal

type Rep SecurityDefinitions = D1 ('MetaData "SecurityDefinitions" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'True) (C1 ('MetaCons "SecurityDefinitions" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Definitions SecurityScheme))))
Generic SecurityScheme 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep SecurityScheme 
Instance details

Defined in Data.OpenApi.Internal

type Rep SecurityScheme = D1 ('MetaData "SecurityScheme" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "SecurityScheme" 'PrefixI 'True) (S1 ('MetaSel ('Just "_securitySchemeType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SecuritySchemeType) :*: S1 ('MetaSel ('Just "_securitySchemeDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))))
Generic SecuritySchemeType 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep SecuritySchemeType 
Instance details

Defined in Data.OpenApi.Internal

type Rep SecuritySchemeType = D1 ('MetaData "SecuritySchemeType" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) ((C1 ('MetaCons "SecuritySchemeHttp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 HttpSchemeType)) :+: C1 ('MetaCons "SecuritySchemeApiKey" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ApiKeyParams))) :+: (C1 ('MetaCons "SecuritySchemeOAuth2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 OAuth2Flows)) :+: C1 ('MetaCons "SecuritySchemeOpenIdConnect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 URL))))
Generic Server 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Server 
Instance details

Defined in Data.OpenApi.Internal

type Rep Server = D1 ('MetaData "Server" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Server" 'PrefixI 'True) (S1 ('MetaSel ('Just "_serverUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_serverDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_serverVariables") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text ServerVariable)))))

Methods

from :: Server -> Rep Server x #

to :: Rep Server x -> Server #

Generic ServerVariable 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep ServerVariable 
Instance details

Defined in Data.OpenApi.Internal

type Rep ServerVariable = D1 ('MetaData "ServerVariable" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "ServerVariable" 'PrefixI 'True) (S1 ('MetaSel ('Just "_serverVariableEnum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (InsOrdHashSet Text))) :*: (S1 ('MetaSel ('Just "_serverVariableDefault") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "_serverVariableDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)))))
Generic Style 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Style 
Instance details

Defined in Data.OpenApi.Internal

type Rep Style = D1 ('MetaData "Style" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) ((C1 ('MetaCons "StyleMatrix" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "StyleLabel" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "StyleForm" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "StyleSimple" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "StyleSpaceDelimited" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "StylePipeDelimited" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "StyleDeepObject" 'PrefixI 'False) (U1 :: Type -> Type))))

Methods

from :: Style -> Rep Style x #

to :: Rep Style x -> Style #

Generic Tag 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Tag 
Instance details

Defined in Data.OpenApi.Internal

type Rep Tag = D1 ('MetaData "Tag" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Tag" 'PrefixI 'True) (S1 ('MetaSel ('Just "_tagName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TagName) :*: (S1 ('MetaSel ('Just "_tagDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_tagExternalDocs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ExternalDocs)))))

Methods

from :: Tag -> Rep Tag x #

to :: Rep Tag x -> Tag #

Generic Xml 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep Xml 
Instance details

Defined in Data.OpenApi.Internal

type Rep Xml = D1 ('MetaData "Xml" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "Xml" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_xmlName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_xmlNamespace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "_xmlPrefix") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "_xmlAttribute") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "_xmlWrapped") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Bool))))))

Methods

from :: Xml -> Rep Xml x #

to :: Rep Xml x -> Xml #

Generic ConstructorInfo 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep ConstructorInfo 
Instance details

Defined in Language.Haskell.TH.Datatype

type Rep ConstructorInfo = D1 ('MetaData "ConstructorInfo" "Language.Haskell.TH.Datatype" "th-abstraction-0.7.2.0-LXxpvWq4N5lSpSniaraaB" 'False) (C1 ('MetaCons "ConstructorInfo" 'PrefixI 'True) ((S1 ('MetaSel ('Just "constructorName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: (S1 ('MetaSel ('Just "constructorVars") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [TyVarBndrUnit]) :*: S1 ('MetaSel ('Just "constructorContext") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Cxt))) :*: (S1 ('MetaSel ('Just "constructorFields") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Type]) :*: (S1 ('MetaSel ('Just "constructorStrictness") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FieldStrictness]) :*: S1 ('MetaSel ('Just "constructorVariant") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConstructorVariant)))))
Generic ConstructorVariant 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep ConstructorVariant 
Instance details

Defined in Language.Haskell.TH.Datatype

type Rep ConstructorVariant = D1 ('MetaData "ConstructorVariant" "Language.Haskell.TH.Datatype" "th-abstraction-0.7.2.0-LXxpvWq4N5lSpSniaraaB" 'False) (C1 ('MetaCons "NormalConstructor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "InfixConstructor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RecordConstructor" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Name]))))
Generic DatatypeInfo 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep DatatypeInfo 
Instance details

Defined in Language.Haskell.TH.Datatype

type Rep DatatypeInfo = D1 ('MetaData "DatatypeInfo" "Language.Haskell.TH.Datatype" "th-abstraction-0.7.2.0-LXxpvWq4N5lSpSniaraaB" 'False) (C1 ('MetaCons "DatatypeInfo" 'PrefixI 'True) ((S1 ('MetaSel ('Just "datatypeContext") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Cxt) :*: (S1 ('MetaSel ('Just "datatypeName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Just "datatypeVars") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [TyVarBndrUnit]))) :*: ((S1 ('MetaSel ('Just "datatypeInstTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Type]) :*: S1 ('MetaSel ('Just "datatypeVariant") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DatatypeVariant)) :*: (S1 ('MetaSel ('Just "datatypeReturnKind") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Kind) :*: S1 ('MetaSel ('Just "datatypeCons") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [ConstructorInfo])))))
Generic DatatypeVariant 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep DatatypeVariant 
Instance details

Defined in Language.Haskell.TH.Datatype

type Rep DatatypeVariant = D1 ('MetaData "DatatypeVariant" "Language.Haskell.TH.Datatype" "th-abstraction-0.7.2.0-LXxpvWq4N5lSpSniaraaB" 'False) ((C1 ('MetaCons "Datatype" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Newtype" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DataInstance" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "NewtypeInstance" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TypeData" 'PrefixI 'False) (U1 :: Type -> Type))))
Generic FieldStrictness 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep FieldStrictness 
Instance details

Defined in Language.Haskell.TH.Datatype

type Rep FieldStrictness = D1 ('MetaData "FieldStrictness" "Language.Haskell.TH.Datatype" "th-abstraction-0.7.2.0-LXxpvWq4N5lSpSniaraaB" 'False) (C1 ('MetaCons "FieldStrictness" 'PrefixI 'True) (S1 ('MetaSel ('Just "fieldUnpackedness") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Unpackedness) :*: S1 ('MetaSel ('Just "fieldStrictness") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Strictness)))
Generic Strictness 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep Strictness 
Instance details

Defined in Language.Haskell.TH.Datatype

type Rep Strictness = D1 ('MetaData "Strictness" "Language.Haskell.TH.Datatype" "th-abstraction-0.7.2.0-LXxpvWq4N5lSpSniaraaB" 'False) (C1 ('MetaCons "UnspecifiedStrictness" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Lazy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Strict" 'PrefixI 'False) (U1 :: Type -> Type)))
Generic Unpackedness 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep Unpackedness 
Instance details

Defined in Language.Haskell.TH.Datatype

type Rep Unpackedness = D1 ('MetaData "Unpackedness" "Language.Haskell.TH.Datatype" "th-abstraction-0.7.2.0-LXxpvWq4N5lSpSniaraaB" 'False) (C1 ('MetaCons "UnspecifiedUnpackedness" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "NoUnpack" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Unpack" 'PrefixI 'False) (U1 :: Type -> Type)))
Generic UnixTime 
Instance details

Defined in Data.UnixTime.Types

Associated Types

type Rep UnixTime 
Instance details

Defined in Data.UnixTime.Types

type Rep UnixTime = D1 ('MetaData "UnixTime" "Data.UnixTime.Types" "unix-time-0.4.17-KImRvb7SVNEHCeF6wJSmd8" 'False) (C1 ('MetaCons "UnixTime" 'PrefixI 'True) (S1 ('MetaSel ('Just "utSeconds") 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 CTime) :*: S1 ('MetaSel ('Just "utMicroSeconds") 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 Int32)))

Methods

from :: UnixTime -> Rep UnixTime x #

to :: Rep UnixTime x -> UnixTime #

Generic CompressParams 
Instance details

Defined in Codec.Compression.Zlib.Internal

Associated Types

type Rep CompressParams

Since: zlib-0.7.0.0

Instance details

Defined in Codec.Compression.Zlib.Internal

type Rep CompressParams = D1 ('MetaData "CompressParams" "Codec.Compression.Zlib.Internal" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'False) (C1 ('MetaCons "CompressParams" 'PrefixI 'True) ((S1 ('MetaSel ('Just "compressLevel") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 CompressionLevel) :*: (S1 ('MetaSel ('Just "compressMethod") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Method) :*: S1 ('MetaSel ('Just "compressWindowBits") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 WindowBits))) :*: ((S1 ('MetaSel ('Just "compressMemoryLevel") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 MemoryLevel) :*: S1 ('MetaSel ('Just "compressStrategy") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 CompressionStrategy)) :*: (S1 ('MetaSel ('Just "compressBufferSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "compressDictionary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ByteString))))))
Generic DecompressError 
Instance details

Defined in Codec.Compression.Zlib.Internal

Associated Types

type Rep DecompressError

Since: zlib-0.7.0.0

Instance details

Defined in Codec.Compression.Zlib.Internal

type Rep DecompressError = D1 ('MetaData "DecompressError" "Codec.Compression.Zlib.Internal" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'False) ((C1 ('MetaCons "TruncatedInput" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DictionaryRequired" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DictionaryMismatch" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DataFormatError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))
Generic DecompressParams 
Instance details

Defined in Codec.Compression.Zlib.Internal

Associated Types

type Rep DecompressParams

Since: zlib-0.7.0.0

Instance details

Defined in Codec.Compression.Zlib.Internal

type Rep DecompressParams = D1 ('MetaData "DecompressParams" "Codec.Compression.Zlib.Internal" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'False) (C1 ('MetaCons "DecompressParams" 'PrefixI 'True) ((S1 ('MetaSel ('Just "decompressWindowBits") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 WindowBits) :*: S1 ('MetaSel ('Just "decompressBufferSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)) :*: (S1 ('MetaSel ('Just "decompressDictionary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe ByteString)) :*: S1 ('MetaSel ('Just "decompressAllMembers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))))
Generic CompressionLevel 
Instance details

Defined in Codec.Compression.Zlib.Stream

Associated Types

type Rep CompressionLevel 
Instance details

Defined in Codec.Compression.Zlib.Stream

type Rep CompressionLevel = D1 ('MetaData "CompressionLevel" "Codec.Compression.Zlib.Stream" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'True) (C1 ('MetaCons "CompressionLevel" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))
Generic CompressionStrategy 
Instance details

Defined in Codec.Compression.Zlib.Stream

Associated Types

type Rep CompressionStrategy 
Instance details

Defined in Codec.Compression.Zlib.Stream

type Rep CompressionStrategy = D1 ('MetaData "CompressionStrategy" "Codec.Compression.Zlib.Stream" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'False) ((C1 ('MetaCons "DefaultStrategy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Filtered" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "HuffmanOnly" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "RLE" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Fixed" 'PrefixI 'False) (U1 :: Type -> Type))))
Generic Format 
Instance details

Defined in Codec.Compression.Zlib.Stream

Associated Types

type Rep Format 
Instance details

Defined in Codec.Compression.Zlib.Stream

type Rep Format = D1 ('MetaData "Format" "Codec.Compression.Zlib.Stream" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'False) ((C1 ('MetaCons "GZip" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Zlib" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Raw" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GZipOrZlib" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: Format -> Rep Format x #

to :: Rep Format x -> Format #

Generic MemoryLevel 
Instance details

Defined in Codec.Compression.Zlib.Stream

Associated Types

type Rep MemoryLevel 
Instance details

Defined in Codec.Compression.Zlib.Stream

type Rep MemoryLevel = D1 ('MetaData "MemoryLevel" "Codec.Compression.Zlib.Stream" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'True) (C1 ('MetaCons "MemoryLevel" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))
Generic Method 
Instance details

Defined in Codec.Compression.Zlib.Stream

Associated Types

type Rep Method 
Instance details

Defined in Codec.Compression.Zlib.Stream

type Rep Method = D1 ('MetaData "Method" "Codec.Compression.Zlib.Stream" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'False) (C1 ('MetaCons "Deflated" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: Method -> Rep Method x #

to :: Rep Method x -> Method #

Generic WindowBits 
Instance details

Defined in Codec.Compression.Zlib.Stream

Associated Types

type Rep WindowBits 
Instance details

Defined in Codec.Compression.Zlib.Stream

type Rep WindowBits = D1 ('MetaData "WindowBits" "Codec.Compression.Zlib.Stream" "zlib-0.7.1.1-JJRWuCnd7LR9y9ey9xuk4f" 'True) (C1 ('MetaCons "WindowBits" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))
Generic () 
Instance details

Defined in GHC.Generics

Associated Types

type Rep ()

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep () = D1 ('MetaData "Unit" "GHC.Tuple.Prim" "ghc-prim" 'False) (C1 ('MetaCons "()" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: () -> Rep () x #

to :: Rep () x -> () #

Generic Bool 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Bool

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep Bool = D1 ('MetaData "Bool" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "False" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "True" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: Bool -> Rep Bool x #

to :: Rep Bool x -> Bool #

Generic (ZipList a) 
Instance details

Defined in Control.Applicative

Associated Types

type Rep (ZipList a)

Since: base-4.7.0.0

Instance details

Defined in Control.Applicative

type Rep (ZipList a) = D1 ('MetaData "ZipList" "Control.Applicative" "base" 'True) (C1 ('MetaCons "ZipList" 'PrefixI 'True) (S1 ('MetaSel ('Just "getZipList") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [a])))

Methods

from :: ZipList a -> Rep (ZipList a) x #

to :: Rep (ZipList a) x -> ZipList a #

Generic (Complex a) 
Instance details

Defined in Data.Complex

Associated Types

type Rep (Complex a)

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Methods

from :: Complex a -> Rep (Complex a) x #

to :: Rep (Complex a) x -> Complex a #

Generic (Identity a) 
Instance details

Defined in Data.Functor.Identity

Associated Types

type Rep (Identity a)

Since: base-4.8.0.0

Instance details

Defined in Data.Functor.Identity

type Rep (Identity a) = D1 ('MetaData "Identity" "Data.Functor.Identity" "base" 'True) (C1 ('MetaCons "Identity" 'PrefixI 'True) (S1 ('MetaSel ('Just "runIdentity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Identity a -> Rep (Identity a) x #

to :: Rep (Identity a) x -> Identity a #

Generic (First a) 
Instance details

Defined in Data.Monoid

Associated Types

type Rep (First a)

Since: base-4.7.0.0

Instance details

Defined in Data.Monoid

type Rep (First a) = D1 ('MetaData "First" "Data.Monoid" "base" 'True) (C1 ('MetaCons "First" 'PrefixI 'True) (S1 ('MetaSel ('Just "getFirst") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe a))))

Methods

from :: First a -> Rep (First a) x #

to :: Rep (First a) x -> First a #

Generic (Last a) 
Instance details

Defined in Data.Monoid

Associated Types

type Rep (Last a)

Since: base-4.7.0.0

Instance details

Defined in Data.Monoid

type Rep (Last a) = D1 ('MetaData "Last" "Data.Monoid" "base" 'True) (C1 ('MetaCons "Last" 'PrefixI 'True) (S1 ('MetaSel ('Just "getLast") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe a))))

Methods

from :: Last a -> Rep (Last a) x #

to :: Rep (Last a) x -> Last a #

Generic (Down a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Down a)

Since: base-4.12.0.0

Instance details

Defined in GHC.Generics

type Rep (Down a) = D1 ('MetaData "Down" "Data.Ord" "base" 'True) (C1 ('MetaCons "Down" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDown") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Down a -> Rep (Down a) x #

to :: Rep (Down a) x -> Down a #

Generic (First a) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (First a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

type Rep (First a) = D1 ('MetaData "First" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "First" 'PrefixI 'True) (S1 ('MetaSel ('Just "getFirst") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: First a -> Rep (First a) x #

to :: Rep (First a) x -> First a #

Generic (Last a) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Last a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

type Rep (Last a) = D1 ('MetaData "Last" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "Last" 'PrefixI 'True) (S1 ('MetaSel ('Just "getLast") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Last a -> Rep (Last a) x #

to :: Rep (Last a) x -> Last a #

Generic (Max a) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Max a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

type Rep (Max a) = D1 ('MetaData "Max" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "Max" 'PrefixI 'True) (S1 ('MetaSel ('Just "getMax") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Max a -> Rep (Max a) x #

to :: Rep (Max a) x -> Max a #

Generic (Min a) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Min a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

type Rep (Min a) = D1 ('MetaData "Min" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "Min" 'PrefixI 'True) (S1 ('MetaSel ('Just "getMin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Min a -> Rep (Min a) x #

to :: Rep (Min a) x -> Min a #

Generic (WrappedMonoid m) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (WrappedMonoid m)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

type Rep (WrappedMonoid m) = D1 ('MetaData "WrappedMonoid" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "WrapMonoid" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapMonoid") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m)))
Generic (NonEmpty a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (NonEmpty a)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Methods

from :: NonEmpty a -> Rep (NonEmpty a) x #

to :: Rep (NonEmpty a) x -> NonEmpty a #

Generic (Par1 p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Par1 p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

type Rep (Par1 p) = D1 ('MetaData "Par1" "GHC.Generics" "base" 'True) (C1 ('MetaCons "Par1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unPar1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 p)))

Methods

from :: Par1 p -> Rep (Par1 p) x #

to :: Rep (Par1 p) x -> Par1 p #

Generic (Fix f) 
Instance details

Defined in Data.Fix

Associated Types

type Rep (Fix f) 
Instance details

Defined in Data.Fix

type Rep (Fix f) = D1 ('MetaData "Fix" "Data.Fix" "data-fix-0.3.4-5sqeKszne3iA4zGKdu70II" 'True) (C1 ('MetaCons "Fix" 'PrefixI 'True) (S1 ('MetaSel ('Just "unFix") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (Fix f)))))

Methods

from :: Fix f -> Rep (Fix f) x #

to :: Rep (Fix f) x -> Fix f #

Generic (HistoriedResponse body) 
Instance details

Defined in Network.HTTP.Client

Associated Types

type Rep (HistoriedResponse body) 
Instance details

Defined in Network.HTTP.Client

type Rep (HistoriedResponse body) = D1 ('MetaData "HistoriedResponse" "Network.HTTP.Client" "http-client-0.7.19-6tbyEVKFt7LF4MB6NuHymW" 'False) (C1 ('MetaCons "HistoriedResponse" 'PrefixI 'True) (S1 ('MetaSel ('Just "hrRedirects") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(Request, Response ByteString)]) :*: (S1 ('MetaSel ('Just "hrFinalRequest") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Request) :*: S1 ('MetaSel ('Just "hrFinalResponse") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Response body)))))

Methods

from :: HistoriedResponse body -> Rep (HistoriedResponse body) x #

to :: Rep (HistoriedResponse body) x -> HistoriedResponse body #

Generic (AddrRange a) 
Instance details

Defined in Data.IP.Range

Associated Types

type Rep (AddrRange a) 
Instance details

Defined in Data.IP.Range

type Rep (AddrRange a) = D1 ('MetaData "AddrRange" "Data.IP.Range" "iproute-1.7.15-6WBgaJFy1dA8RDxUp3zrjZ" 'False) (C1 ('MetaCons "AddrRange" 'PrefixI 'True) (S1 ('MetaSel ('Just "addr") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: (S1 ('MetaSel ('Just "mask") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Just "mlen") 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 Int))))

Methods

from :: AddrRange a -> Rep (AddrRange a) x #

to :: Rep (AddrRange a) x -> AddrRange a #

Generic (OAuth2Flow p) 
Instance details

Defined in Data.OpenApi.Internal

Associated Types

type Rep (OAuth2Flow p) 
Instance details

Defined in Data.OpenApi.Internal

type Rep (OAuth2Flow p) = D1 ('MetaData "OAuth2Flow" "Data.OpenApi.Internal" "openapi3-3.2.4-6mQ1n1ZYzYp30iNIc3Ctov" 'False) (C1 ('MetaCons "OAuth2Flow" 'PrefixI 'True) (S1 ('MetaSel ('Just "_oAuth2Params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 p) :*: (S1 ('MetaSel ('Just "_oAath2RefreshUrl") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe URL)) :*: S1 ('MetaSel ('Just "_oAuth2Scopes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (InsOrdHashMap Text Text)))))

Methods

from :: OAuth2Flow p -> Rep (OAuth2Flow p) x #

to :: Rep (OAuth2Flow p) x -> OAuth2Flow p #

Generic (I a) 
Instance details

Defined in Data.SOP.BasicFunctors

Associated Types

type Rep (I a) 
Instance details

Defined in Data.SOP.BasicFunctors

type Rep (I a) = D1 ('MetaData "I" "Data.SOP.BasicFunctors" "sop-core-0.5.0.2-KDbz55wTmU8LdRlAoHty2M" 'True) (C1 ('MetaCons "I" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: I a -> Rep (I a) x #

to :: Rep (I a) x -> I a #

Generic (Maybe a) 
Instance details

Defined in Data.Strict.Maybe

Associated Types

type Rep (Maybe a) 
Instance details

Defined in Data.Strict.Maybe

type Rep (Maybe a) = D1 ('MetaData "Maybe" "Data.Strict.Maybe" "strict-0.5.1-FPH69vZp0ac4eBb6f0lR0T" 'False) (C1 ('MetaCons "Nothing" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Just" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))

Methods

from :: Maybe a -> Rep (Maybe a) x #

to :: Rep (Maybe a) x -> Maybe a #

Generic (Maybe a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Maybe a)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep (Maybe a) = D1 ('MetaData "Maybe" "GHC.Maybe" "base" 'False) (C1 ('MetaCons "Nothing" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Just" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Maybe a -> Rep (Maybe a) x #

to :: Rep (Maybe a) x -> Maybe a #

Generic (Solo a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Solo a)

Since: base-4.15

Instance details

Defined in GHC.Generics

type Rep (Solo a) = D1 ('MetaData "Solo" "GHC.Tuple.Prim" "ghc-prim" 'False) (C1 ('MetaCons "MkSolo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Solo a -> Rep (Solo a) x #

to :: Rep (Solo a) x -> Solo a #

Generic [a] 
Instance details

Defined in GHC.Generics

Associated Types

type Rep [a]

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Methods

from :: [a] -> Rep [a] x #

to :: Rep [a] x -> [a] #

Generic (WrappedMonad m a) 
Instance details

Defined in Control.Applicative

Associated Types

type Rep (WrappedMonad m a)

Since: base-4.7.0.0

Instance details

Defined in Control.Applicative

type Rep (WrappedMonad m a) = D1 ('MetaData "WrappedMonad" "Control.Applicative" "base" 'True) (C1 ('MetaCons "WrapMonad" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapMonad") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m a))))

Methods

from :: WrappedMonad m a -> Rep (WrappedMonad m a) x #

to :: Rep (WrappedMonad m a) x -> WrappedMonad m a #

Generic (Either a b) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Either a b)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Methods

from :: Either a b -> Rep (Either a b) x #

to :: Rep (Either a b) x -> Either a b #

Generic (Proxy t) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Proxy t)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep (Proxy t) = D1 ('MetaData "Proxy" "Data.Proxy" "base" 'False) (C1 ('MetaCons "Proxy" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: Proxy t -> Rep (Proxy t) x #

to :: Rep (Proxy t) x -> Proxy t #

Generic (Arg a b) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Arg a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

from :: Arg a b -> Rep (Arg a b) x #

to :: Rep (Arg a b) x -> Arg a b #

Generic (U1 p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (U1 p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

type Rep (U1 p) = D1 ('MetaData "U1" "GHC.Generics" "base" 'False) (C1 ('MetaCons "U1" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: U1 p -> Rep (U1 p) x #

to :: Rep (U1 p) x -> U1 p #

Generic (V1 p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (V1 p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep (V1 p) = D1 ('MetaData "V1" "GHC.Generics" "base" 'False) (V1 :: Type -> Type)

Methods

from :: V1 p -> Rep (V1 p) x #

to :: Rep (V1 p) x -> V1 p #

Generic (Cofree f a) 
Instance details

Defined in Control.Comonad.Cofree

Associated Types

type Rep (Cofree f a) 
Instance details

Defined in Control.Comonad.Cofree

type Rep (Cofree f a) = D1 ('MetaData "Cofree" "Control.Comonad.Cofree" "free-5.2-IawT7CyjoC2HuSKevjv9ln" 'False) (C1 ('MetaCons ":<" ('InfixI 'RightAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (Cofree f a)))))

Methods

from :: Cofree f a -> Rep (Cofree f a) x #

to :: Rep (Cofree f a) x -> Cofree f a #

Generic (Free f a) 
Instance details

Defined in Control.Monad.Free

Associated Types

type Rep (Free f a) 
Instance details

Defined in Control.Monad.Free

type Rep (Free f a) = D1 ('MetaData "Free" "Control.Monad.Free" "free-5.2-IawT7CyjoC2HuSKevjv9ln" 'False) (C1 ('MetaCons "Pure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Free" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (Free f a)))))

Methods

from :: Free f a -> Rep (Free f a) x #

to :: Rep (Free f a) x -> Free f a #

Generic (Either a b) 
Instance details

Defined in Data.Strict.Either

Associated Types

type Rep (Either a b) 
Instance details

Defined in Data.Strict.Either

type Rep (Either a b) = D1 ('MetaData "Either" "Data.Strict.Either" "strict-0.5.1-FPH69vZp0ac4eBb6f0lR0T" 'False) (C1 ('MetaCons "Left" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)) :+: C1 ('MetaCons "Right" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 b)))

Methods

from :: Either a b -> Rep (Either a b) x #

to :: Rep (Either a b) x -> Either a b #

Generic (These a b) 
Instance details

Defined in Data.Strict.These

Associated Types

type Rep (These a b) 
Instance details

Defined in Data.Strict.These

Methods

from :: These a b -> Rep (These a b) x #

to :: Rep (These a b) x -> These a b #

Generic (Pair a b) 
Instance details

Defined in Data.Strict.Tuple

Associated Types

type Rep (Pair a b) 
Instance details

Defined in Data.Strict.Tuple

type Rep (Pair a b) = D1 ('MetaData "Pair" "Data.Strict.Tuple" "strict-0.5.1-FPH69vZp0ac4eBb6f0lR0T" 'False) (C1 ('MetaCons ":!:" ('InfixI 'NotAssociative 2) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 b)))

Methods

from :: Pair a b -> Rep (Pair a b) x #

to :: Rep (Pair a b) x -> Pair a b #

Generic (These a b) 
Instance details

Defined in Data.These

Associated Types

type Rep (These a b) 
Instance details

Defined in Data.These

Methods

from :: These a b -> Rep (These a b) x #

to :: Rep (These a b) x -> These a b #

Generic (Lift f a) 
Instance details

Defined in Control.Applicative.Lift

Associated Types

type Rep (Lift f a) 
Instance details

Defined in Control.Applicative.Lift

type Rep (Lift f a) = D1 ('MetaData "Lift" "Control.Applicative.Lift" "transformers-0.6.1.0-inplace" 'False) (C1 ('MetaCons "Pure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Other" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Lift f a -> Rep (Lift f a) x #

to :: Rep (Lift f a) x -> Lift f a #

Generic (MaybeT m a) 
Instance details

Defined in Control.Monad.Trans.Maybe

Associated Types

type Rep (MaybeT m a) 
Instance details

Defined in Control.Monad.Trans.Maybe

type Rep (MaybeT m a) = D1 ('MetaData "MaybeT" "Control.Monad.Trans.Maybe" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "MaybeT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runMaybeT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (Maybe a)))))

Methods

from :: MaybeT m a -> Rep (MaybeT m a) x #

to :: Rep (MaybeT m a) x -> MaybeT m a #

Generic (a, b) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Methods

from :: (a, b) -> Rep (a, b) x #

to :: Rep (a, b) x -> (a, b) #

Generic (WrappedArrow a b c) 
Instance details

Defined in Control.Applicative

Associated Types

type Rep (WrappedArrow a b c)

Since: base-4.7.0.0

Instance details

Defined in Control.Applicative

type Rep (WrappedArrow a b c) = D1 ('MetaData "WrappedArrow" "Control.Applicative" "base" 'True) (C1 ('MetaCons "WrapArrow" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapArrow") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (a b c))))

Methods

from :: WrappedArrow a b c -> Rep (WrappedArrow a b c) x #

to :: Rep (WrappedArrow a b c) x -> WrappedArrow a b c #

Generic (Kleisli m a b) 
Instance details

Defined in Control.Arrow

Associated Types

type Rep (Kleisli m a b)

Since: base-4.14.0.0

Instance details

Defined in Control.Arrow

type Rep (Kleisli m a b) = D1 ('MetaData "Kleisli" "Control.Arrow" "base" 'True) (C1 ('MetaCons "Kleisli" 'PrefixI 'True) (S1 ('MetaSel ('Just "runKleisli") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (a -> m b))))

Methods

from :: Kleisli m a b -> Rep (Kleisli m a b) x #

to :: Rep (Kleisli m a b) x -> Kleisli m a b #

Generic (Const a b) 
Instance details

Defined in Data.Functor.Const

Associated Types

type Rep (Const a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

type Rep (Const a b) = D1 ('MetaData "Const" "Data.Functor.Const" "base" 'True) (C1 ('MetaCons "Const" 'PrefixI 'True) (S1 ('MetaSel ('Just "getConst") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Const a b -> Rep (Const a b) x #

to :: Rep (Const a b) x -> Const a b #

Generic (Ap f a) 
Instance details

Defined in Data.Monoid

Associated Types

type Rep (Ap f a)

Since: base-4.12.0.0

Instance details

Defined in Data.Monoid

type Rep (Ap f a) = D1 ('MetaData "Ap" "Data.Monoid" "base" 'True) (C1 ('MetaCons "Ap" 'PrefixI 'True) (S1 ('MetaSel ('Just "getAp") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Ap f a -> Rep (Ap f a) x #

to :: Rep (Ap f a) x -> Ap f a #

Generic (Rec1 f p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Rec1 f p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

type Rep (Rec1 f p) = D1 ('MetaData "Rec1" "GHC.Generics" "base" 'True) (C1 ('MetaCons "Rec1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unRec1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f p))))

Methods

from :: Rec1 f p -> Rep (Rec1 f p) x #

to :: Rep (Rec1 f p) x -> Rec1 f p #

Generic (URec (Ptr ()) p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec (Ptr ()) p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep (URec (Ptr ()) p) = D1 ('MetaData "URec" "GHC.Generics" "base" 'False) (C1 ('MetaCons "UAddr" 'PrefixI 'True) (S1 ('MetaSel ('Just "uAddr#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UAddr :: Type -> Type)))

Methods

from :: URec (Ptr ()) p -> Rep (URec (Ptr ()) p) x #

to :: Rep (URec (Ptr ()) p) x -> URec (Ptr ()) p #

Generic (URec Char p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Char p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep (URec Char p) = D1 ('MetaData "URec" "GHC.Generics" "base" 'False) (C1 ('MetaCons "UChar" 'PrefixI 'True) (S1 ('MetaSel ('Just "uChar#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UChar :: Type -> Type)))

Methods

from :: URec Char p -> Rep (URec Char p) x #

to :: Rep (URec Char p) x -> URec Char p #

Generic (URec Double p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Double p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep (URec Double p) = D1 ('MetaData "URec" "GHC.Generics" "base" 'False) (C1 ('MetaCons "UDouble" 'PrefixI 'True) (S1 ('MetaSel ('Just "uDouble#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UDouble :: Type -> Type)))

Methods

from :: URec Double p -> Rep (URec Double p) x #

to :: Rep (URec Double p) x -> URec Double p #

Generic (URec Float p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Float p) 
Instance details

Defined in GHC.Generics

type Rep (URec Float p) = D1 ('MetaData "URec" "GHC.Generics" "base" 'False) (C1 ('MetaCons "UFloat" 'PrefixI 'True) (S1 ('MetaSel ('Just "uFloat#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UFloat :: Type -> Type)))

Methods

from :: URec Float p -> Rep (URec Float p) x #

to :: Rep (URec Float p) x -> URec Float p #

Generic (URec Int p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Int p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep (URec Int p) = D1 ('MetaData "URec" "GHC.Generics" "base" 'False) (C1 ('MetaCons "UInt" 'PrefixI 'True) (S1 ('MetaSel ('Just "uInt#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UInt :: Type -> Type)))

Methods

from :: URec Int p -> Rep (URec Int p) x #

to :: Rep (URec Int p) x -> URec Int p #

Generic (URec Word p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Word p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep (URec Word p) = D1 ('MetaData "URec" "GHC.Generics" "base" 'False) (C1 ('MetaCons "UWord" 'PrefixI 'True) (S1 ('MetaSel ('Just "uWord#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UWord :: Type -> Type)))

Methods

from :: URec Word p -> Rep (URec Word p) x #

to :: Rep (URec Word p) x -> URec Word p #

Generic (Fix p a) 
Instance details

Defined in Data.Bifunctor.Fix

Associated Types

type Rep (Fix p a) 
Instance details

Defined in Data.Bifunctor.Fix

type Rep (Fix p a) = D1 ('MetaData "Fix" "Data.Bifunctor.Fix" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'True) (C1 ('MetaCons "In" 'PrefixI 'True) (S1 ('MetaSel ('Just "out") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p (Fix p a) a))))

Methods

from :: Fix p a -> Rep (Fix p a) x #

to :: Rep (Fix p a) x -> Fix p a #

Generic (Join p a) 
Instance details

Defined in Data.Bifunctor.Join

Associated Types

type Rep (Join p a) 
Instance details

Defined in Data.Bifunctor.Join

type Rep (Join p a) = D1 ('MetaData "Join" "Data.Bifunctor.Join" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'True) (C1 ('MetaCons "Join" 'PrefixI 'True) (S1 ('MetaSel ('Just "runJoin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a a))))

Methods

from :: Join p a -> Rep (Join p a) x #

to :: Rep (Join p a) x -> Join p a #

Generic (CofreeF f a b) 
Instance details

Defined in Control.Comonad.Trans.Cofree

Associated Types

type Rep (CofreeF f a b) 
Instance details

Defined in Control.Comonad.Trans.Cofree

type Rep (CofreeF f a b) = D1 ('MetaData "CofreeF" "Control.Comonad.Trans.Cofree" "free-5.2-IawT7CyjoC2HuSKevjv9ln" 'False) (C1 ('MetaCons ":<" ('InfixI 'RightAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f b))))

Methods

from :: CofreeF f a b -> Rep (CofreeF f a b) x #

to :: Rep (CofreeF f a b) x -> CofreeF f a b #

Generic (FreeF f a b) 
Instance details

Defined in Control.Monad.Trans.Free

Associated Types

type Rep (FreeF f a b) 
Instance details

Defined in Control.Monad.Trans.Free

type Rep (FreeF f a b) = D1 ('MetaData "FreeF" "Control.Monad.Trans.Free" "free-5.2-IawT7CyjoC2HuSKevjv9ln" 'False) (C1 ('MetaCons "Pure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Free" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f b))))

Methods

from :: FreeF f a b -> Rep (FreeF f a b) x #

to :: Rep (FreeF f a b) x -> FreeF f a b #

Generic (K a b) 
Instance details

Defined in Data.SOP.BasicFunctors

Associated Types

type Rep (K a b) 
Instance details

Defined in Data.SOP.BasicFunctors

type Rep (K a b) = D1 ('MetaData "K" "Data.SOP.BasicFunctors" "sop-core-0.5.0.2-KDbz55wTmU8LdRlAoHty2M" 'True) (C1 ('MetaCons "K" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: K a b -> Rep (K a b) x #

to :: Rep (K a b) x -> K a b #

Generic (Tagged s b) 
Instance details

Defined in Data.Tagged

Associated Types

type Rep (Tagged s b) 
Instance details

Defined in Data.Tagged

type Rep (Tagged s b) = D1 ('MetaData "Tagged" "Data.Tagged" "tagged-0.8.10-AB5hoggHcu9Fkw7jqxEFs0" 'True) (C1 ('MetaCons "Tagged" 'PrefixI 'True) (S1 ('MetaSel ('Just "unTagged") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)))

Methods

from :: Tagged s b -> Rep (Tagged s b) x #

to :: Rep (Tagged s b) x -> Tagged s b #

Generic (These1 f g a) 
Instance details

Defined in Data.Functor.These

Associated Types

type Rep (These1 f g a) 
Instance details

Defined in Data.Functor.These

Methods

from :: These1 f g a -> Rep (These1 f g a) x #

to :: Rep (These1 f g a) x -> These1 f g a #

Generic (Backwards f a) 
Instance details

Defined in Control.Applicative.Backwards

Associated Types

type Rep (Backwards f a) 
Instance details

Defined in Control.Applicative.Backwards

type Rep (Backwards f a) = D1 ('MetaData "Backwards" "Control.Applicative.Backwards" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "Backwards" 'PrefixI 'True) (S1 ('MetaSel ('Just "forwards") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Backwards f a -> Rep (Backwards f a) x #

to :: Rep (Backwards f a) x -> Backwards f a #

Generic (AccumT w m a) 
Instance details

Defined in Control.Monad.Trans.Accum

Associated Types

type Rep (AccumT w m a) 
Instance details

Defined in Control.Monad.Trans.Accum

type Rep (AccumT w m a) = D1 ('MetaData "AccumT" "Control.Monad.Trans.Accum" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "AccumT" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (w -> m (a, w)))))

Methods

from :: AccumT w m a -> Rep (AccumT w m a) x #

to :: Rep (AccumT w m a) x -> AccumT w m a #

Generic (ExceptT e m a) 
Instance details

Defined in Control.Monad.Trans.Except

Associated Types

type Rep (ExceptT e m a) 
Instance details

Defined in Control.Monad.Trans.Except

type Rep (ExceptT e m a) = D1 ('MetaData "ExceptT" "Control.Monad.Trans.Except" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "ExceptT" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (Either e a)))))

Methods

from :: ExceptT e m a -> Rep (ExceptT e m a) x #

to :: Rep (ExceptT e m a) x -> ExceptT e m a #

Generic (IdentityT f a) 
Instance details

Defined in Control.Monad.Trans.Identity

Associated Types

type Rep (IdentityT f a) 
Instance details

Defined in Control.Monad.Trans.Identity

type Rep (IdentityT f a) = D1 ('MetaData "IdentityT" "Control.Monad.Trans.Identity" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "IdentityT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runIdentityT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: IdentityT f a -> Rep (IdentityT f a) x #

to :: Rep (IdentityT f a) x -> IdentityT f a #

Generic (ReaderT r m a) 
Instance details

Defined in Control.Monad.Trans.Reader

Associated Types

type Rep (ReaderT r m a) 
Instance details

Defined in Control.Monad.Trans.Reader

type Rep (ReaderT r m a) = D1 ('MetaData "ReaderT" "Control.Monad.Trans.Reader" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "ReaderT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runReaderT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> m a))))

Methods

from :: ReaderT r m a -> Rep (ReaderT r m a) x #

to :: Rep (ReaderT r m a) x -> ReaderT r m a #

Generic (SelectT r m a) 
Instance details

Defined in Control.Monad.Trans.Select

Associated Types

type Rep (SelectT r m a) 
Instance details

Defined in Control.Monad.Trans.Select

type Rep (SelectT r m a) = D1 ('MetaData "SelectT" "Control.Monad.Trans.Select" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "SelectT" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ((a -> m r) -> m a))))

Methods

from :: SelectT r m a -> Rep (SelectT r m a) x #

to :: Rep (SelectT r m a) x -> SelectT r m a #

Generic (StateT s m a) 
Instance details

Defined in Control.Monad.Trans.State.Lazy

Associated Types

type Rep (StateT s m a) 
Instance details

Defined in Control.Monad.Trans.State.Lazy

type Rep (StateT s m a) = D1 ('MetaData "StateT" "Control.Monad.Trans.State.Lazy" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "StateT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runStateT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (s -> m (a, s)))))

Methods

from :: StateT s m a -> Rep (StateT s m a) x #

to :: Rep (StateT s m a) x -> StateT s m a #

Generic (StateT s m a) 
Instance details

Defined in Control.Monad.Trans.State.Strict

Associated Types

type Rep (StateT s m a) 
Instance details

Defined in Control.Monad.Trans.State.Strict

type Rep (StateT s m a) = D1 ('MetaData "StateT" "Control.Monad.Trans.State.Strict" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "StateT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runStateT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (s -> m (a, s)))))

Methods

from :: StateT s m a -> Rep (StateT s m a) x #

to :: Rep (StateT s m a) x -> StateT s m a #

Generic (WriterT w m a) 
Instance details

Defined in Control.Monad.Trans.Writer.CPS

Associated Types

type Rep (WriterT w m a) 
Instance details

Defined in Control.Monad.Trans.Writer.CPS

type Rep (WriterT w m a) = D1 ('MetaData "WriterT" "Control.Monad.Trans.Writer.CPS" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "WriterT" 'PrefixI 'True) (S1 ('MetaSel ('Just "unWriterT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (w -> m (a, w)))))

Methods

from :: WriterT w m a -> Rep (WriterT w m a) x #

to :: Rep (WriterT w m a) x -> WriterT w m a #

Generic (WriterT w m a) 
Instance details

Defined in Control.Monad.Trans.Writer.Lazy

Associated Types

type Rep (WriterT w m a) 
Instance details

Defined in Control.Monad.Trans.Writer.Lazy

type Rep (WriterT w m a) = D1 ('MetaData "WriterT" "Control.Monad.Trans.Writer.Lazy" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "WriterT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runWriterT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (a, w)))))

Methods

from :: WriterT w m a -> Rep (WriterT w m a) x #

to :: Rep (WriterT w m a) x -> WriterT w m a #

Generic (WriterT w m a) 
Instance details

Defined in Control.Monad.Trans.Writer.Strict

Associated Types

type Rep (WriterT w m a) 
Instance details

Defined in Control.Monad.Trans.Writer.Strict

type Rep (WriterT w m a) = D1 ('MetaData "WriterT" "Control.Monad.Trans.Writer.Strict" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "WriterT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runWriterT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (a, w)))))

Methods

from :: WriterT w m a -> Rep (WriterT w m a) x #

to :: Rep (WriterT w m a) x -> WriterT w m a #

Generic (Constant a b) 
Instance details

Defined in Data.Functor.Constant

Associated Types

type Rep (Constant a b) 
Instance details

Defined in Data.Functor.Constant

type Rep (Constant a b) = D1 ('MetaData "Constant" "Data.Functor.Constant" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "Constant" 'PrefixI 'True) (S1 ('MetaSel ('Just "getConstant") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Constant a b -> Rep (Constant a b) x #

to :: Rep (Constant a b) x -> Constant a b #

Generic (Reverse f a) 
Instance details

Defined in Data.Functor.Reverse

Associated Types

type Rep (Reverse f a) 
Instance details

Defined in Data.Functor.Reverse

type Rep (Reverse f a) = D1 ('MetaData "Reverse" "Data.Functor.Reverse" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "Reverse" 'PrefixI 'True) (S1 ('MetaSel ('Just "getReverse") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Reverse f a -> Rep (Reverse f a) x #

to :: Rep (Reverse f a) x -> Reverse f a #

Generic (a, b, c) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c) -> Rep (a, b, c) x #

to :: Rep (a, b, c) x -> (a, b, c) #

Generic (Product f g a) 
Instance details

Defined in Data.Functor.Product

Associated Types

type Rep (Product f g a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Product

type Rep (Product f g a) = D1 ('MetaData "Product" "Data.Functor.Product" "base" 'False) (C1 ('MetaCons "Pair" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g a))))

Methods

from :: Product f g a -> Rep (Product f g a) x #

to :: Rep (Product f g a) x -> Product f g a #

Generic (Sum f g a) 
Instance details

Defined in Data.Functor.Sum

Associated Types

type Rep (Sum f g a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Sum

Methods

from :: Sum f g a -> Rep (Sum f g a) x #

to :: Rep (Sum f g a) x -> Sum f g a #

Generic ((f :*: g) p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :*: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

from :: (f :*: g) p -> Rep ((f :*: g) p) x #

to :: Rep ((f :*: g) p) x -> (f :*: g) p #

Generic ((f :+: g) p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :+: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

from :: (f :+: g) p -> Rep ((f :+: g) p) x #

to :: Rep ((f :+: g) p) x -> (f :+: g) p #

Generic (K1 i c p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (K1 i c p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

type Rep (K1 i c p) = D1 ('MetaData "K1" "GHC.Generics" "base" 'True) (C1 ('MetaCons "K1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unK1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c)))

Methods

from :: K1 i c p -> Rep (K1 i c p) x #

to :: Rep (K1 i c p) x -> K1 i c p #

Generic (ContT r m a) 
Instance details

Defined in Control.Monad.Trans.Cont

Associated Types

type Rep (ContT r m a) 
Instance details

Defined in Control.Monad.Trans.Cont

type Rep (ContT r m a) = D1 ('MetaData "ContT" "Control.Monad.Trans.Cont" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "ContT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runContT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ((a -> m r) -> m r))))

Methods

from :: ContT r m a -> Rep (ContT r m a) x #

to :: Rep (ContT r m a) x -> ContT r m a #

Generic (a, b, c, d) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d) -> Rep (a, b, c, d) x #

to :: Rep (a, b, c, d) x -> (a, b, c, d) #

Generic (Compose f g a) 
Instance details

Defined in Data.Functor.Compose

Associated Types

type Rep (Compose f g a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Compose

type Rep (Compose f g a) = D1 ('MetaData "Compose" "Data.Functor.Compose" "base" 'True) (C1 ('MetaCons "Compose" 'PrefixI 'True) (S1 ('MetaSel ('Just "getCompose") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (g a)))))

Methods

from :: Compose f g a -> Rep (Compose f g a) x #

to :: Rep (Compose f g a) x -> Compose f g a #

Generic ((f :.: g) p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :.: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

type Rep ((f :.: g) p) = D1 ('MetaData ":.:" "GHC.Generics" "base" 'True) (C1 ('MetaCons "Comp1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unComp1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (g p)))))

Methods

from :: (f :.: g) p -> Rep ((f :.: g) p) x #

to :: Rep ((f :.: g) p) x -> (f :.: g) p #

Generic (M1 i c f p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (M1 i c f p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

type Rep (M1 i c f p) = D1 ('MetaData "M1" "GHC.Generics" "base" 'True) (C1 ('MetaCons "M1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unM1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f p))))

Methods

from :: M1 i c f p -> Rep (M1 i c f p) x #

to :: Rep (M1 i c f p) x -> M1 i c f p #

Generic (Clown f a b) 
Instance details

Defined in Data.Bifunctor.Clown

Associated Types

type Rep (Clown f a b) 
Instance details

Defined in Data.Bifunctor.Clown

type Rep (Clown f a b) = D1 ('MetaData "Clown" "Data.Bifunctor.Clown" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'True) (C1 ('MetaCons "Clown" 'PrefixI 'True) (S1 ('MetaSel ('Just "runClown") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Clown f a b -> Rep (Clown f a b) x #

to :: Rep (Clown f a b) x -> Clown f a b #

Generic (Flip p a b) 
Instance details

Defined in Data.Bifunctor.Flip

Associated Types

type Rep (Flip p a b) 
Instance details

Defined in Data.Bifunctor.Flip

type Rep (Flip p a b) = D1 ('MetaData "Flip" "Data.Bifunctor.Flip" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'True) (C1 ('MetaCons "Flip" 'PrefixI 'True) (S1 ('MetaSel ('Just "runFlip") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p b a))))

Methods

from :: Flip p a b -> Rep (Flip p a b) x #

to :: Rep (Flip p a b) x -> Flip p a b #

Generic (Joker g a b) 
Instance details

Defined in Data.Bifunctor.Joker

Associated Types

type Rep (Joker g a b) 
Instance details

Defined in Data.Bifunctor.Joker

type Rep (Joker g a b) = D1 ('MetaData "Joker" "Data.Bifunctor.Joker" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'True) (C1 ('MetaCons "Joker" 'PrefixI 'True) (S1 ('MetaSel ('Just "runJoker") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g b))))

Methods

from :: Joker g a b -> Rep (Joker g a b) x #

to :: Rep (Joker g a b) x -> Joker g a b #

Generic (WrappedBifunctor p a b) 
Instance details

Defined in Data.Bifunctor.Wrapped

Associated Types

type Rep (WrappedBifunctor p a b) 
Instance details

Defined in Data.Bifunctor.Wrapped

type Rep (WrappedBifunctor p a b) = D1 ('MetaData "WrappedBifunctor" "Data.Bifunctor.Wrapped" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'True) (C1 ('MetaCons "WrapBifunctor" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapBifunctor") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a b))))

Methods

from :: WrappedBifunctor p a b -> Rep (WrappedBifunctor p a b) x #

to :: Rep (WrappedBifunctor p a b) x -> WrappedBifunctor p a b #

Generic ((f :.: g) p) 
Instance details

Defined in Data.SOP.BasicFunctors

Associated Types

type Rep ((f :.: g) p) 
Instance details

Defined in Data.SOP.BasicFunctors

type Rep ((f :.: g) p) = D1 ('MetaData ":.:" "Data.SOP.BasicFunctors" "sop-core-0.5.0.2-KDbz55wTmU8LdRlAoHty2M" 'True) (C1 ('MetaCons "Comp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (g p)))))

Methods

from :: (f :.: g) p -> Rep ((f :.: g) p) x #

to :: Rep ((f :.: g) p) x -> (f :.: g) p #

Generic (RWST r w s m a) 
Instance details

Defined in Control.Monad.Trans.RWS.CPS

Associated Types

type Rep (RWST r w s m a) 
Instance details

Defined in Control.Monad.Trans.RWS.CPS

type Rep (RWST r w s m a) = D1 ('MetaData "RWST" "Control.Monad.Trans.RWS.CPS" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "RWST" 'PrefixI 'True) (S1 ('MetaSel ('Just "unRWST") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> s -> w -> m (a, s, w)))))

Methods

from :: RWST r w s m a -> Rep (RWST r w s m a) x #

to :: Rep (RWST r w s m a) x -> RWST r w s m a #

Generic (RWST r w s m a) 
Instance details

Defined in Control.Monad.Trans.RWS.Lazy

Associated Types

type Rep (RWST r w s m a) 
Instance details

Defined in Control.Monad.Trans.RWS.Lazy

type Rep (RWST r w s m a) = D1 ('MetaData "RWST" "Control.Monad.Trans.RWS.Lazy" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "RWST" 'PrefixI 'True) (S1 ('MetaSel ('Just "runRWST") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> s -> m (a, s, w)))))

Methods

from :: RWST r w s m a -> Rep (RWST r w s m a) x #

to :: Rep (RWST r w s m a) x -> RWST r w s m a #

Generic (RWST r w s m a) 
Instance details

Defined in Control.Monad.Trans.RWS.Strict

Associated Types

type Rep (RWST r w s m a) 
Instance details

Defined in Control.Monad.Trans.RWS.Strict

type Rep (RWST r w s m a) = D1 ('MetaData "RWST" "Control.Monad.Trans.RWS.Strict" "transformers-0.6.1.0-inplace" 'True) (C1 ('MetaCons "RWST" 'PrefixI 'True) (S1 ('MetaSel ('Just "runRWST") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> s -> m (a, s, w)))))

Methods

from :: RWST r w s m a -> Rep (RWST r w s m a) x #

to :: Rep (RWST r w s m a) x -> RWST r w s m a #

Generic (a, b, c, d, e) 
Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d, e) -> Rep (a, b, c, d, e) x #

to :: Rep (a, b, c, d, e) x -> (a, b, c, d, e) #

Generic (Product f g a b) 
Instance details

Defined in Data.Bifunctor.Product

Associated Types

type Rep (Product f g a b) 
Instance details

Defined in Data.Bifunctor.Product

type Rep (Product f g a b) = D1 ('MetaData "Product" "Data.Bifunctor.Product" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'False) (C1 ('MetaCons "Pair" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a b)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g a b))))

Methods

from :: Product f g a b -> Rep (Product f g a b) x #

to :: Rep (Product f g a b) x -> Product f g a b #

Generic (Sum p q a b) 
Instance details

Defined in Data.Bifunctor.Sum

Associated Types

type Rep (Sum p q a b) 
Instance details

Defined in Data.Bifunctor.Sum

type Rep (Sum p q a b) = D1 ('MetaData "Sum" "Data.Bifunctor.Sum" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'False) (C1 ('MetaCons "L2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a b))) :+: C1 ('MetaCons "R2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (q a b))))

Methods

from :: Sum p q a b -> Rep (Sum p q a b) x #

to :: Rep (Sum p q a b) x -> Sum p q a b #

Generic (a, b, c, d, e, f) 
Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d, e, f) -> Rep (a, b, c, d, e, f) x #

to :: Rep (a, b, c, d, e, f) x -> (a, b, c, d, e, f) #

Generic (Tannen f p a b) 
Instance details

Defined in Data.Bifunctor.Tannen

Associated Types

type Rep (Tannen f p a b) 
Instance details

Defined in Data.Bifunctor.Tannen

type Rep (Tannen f p a b) = D1 ('MetaData "Tannen" "Data.Bifunctor.Tannen" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'True) (C1 ('MetaCons "Tannen" 'PrefixI 'True) (S1 ('MetaSel ('Just "runTannen") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (p a b)))))

Methods

from :: Tannen f p a b -> Rep (Tannen f p a b) x #

to :: Rep (Tannen f p a b) x -> Tannen f p a b #

Generic (a, b, c, d, e, f, g) 
Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d, e, f, g) -> Rep (a, b, c, d, e, f, g) x #

to :: Rep (a, b, c, d, e, f, g) x -> (a, b, c, d, e, f, g) #

Generic (a, b, c, d, e, f, g, h) 
Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d, e, f, g, h) -> Rep (a, b, c, d, e, f, g, h) x #

to :: Rep (a, b, c, d, e, f, g, h) x -> (a, b, c, d, e, f, g, h) #

Generic (Biff p f g a b) 
Instance details

Defined in Data.Bifunctor.Biff

Associated Types

type Rep (Biff p f g a b) 
Instance details

Defined in Data.Bifunctor.Biff

type Rep (Biff p f g a b) = D1 ('MetaData "Biff" "Data.Bifunctor.Biff" "bifunctors-5.6.3-3by4OtOsmrV2Ol6Sc3cyDN" 'True) (C1 ('MetaCons "Biff" 'PrefixI 'True) (S1 ('MetaSel ('Just "runBiff") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p (f a) (g b)))))

Methods

from :: Biff p f g a b -> Rep (Biff p f g a b) x #

to :: Rep (Biff p f g a b) x -> Biff p f g a b #

Generic (a, b, c, d, e, f, g, h, i) 
Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d, e, f, g, h, i) -> Rep (a, b, c, d, e, f, g, h, i) x #

to :: Rep (a, b, c, d, e, f, g, h, i) x -> (a, b, c, d, e, f, g, h, i) #

Generic (a, b, c, d, e, f, g, h, i, j) 
Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d, e, f, g, h, i, j) -> Rep (a, b, c, d, e, f, g, h, i, j) x #

to :: Rep (a, b, c, d, e, f, g, h, i, j) x -> (a, b, c, d, e, f, g, h, i, j) #

Generic (a, b, c, d, e, f, g, h, i, j, k) 
Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k) -> Rep (a, b, c, d, e, f, g, h, i, j, k) x #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k) x -> (a, b, c, d, e, f, g, h, i, j, k) #

Generic (a, b, c, d, e, f, g, h, i, j, k, l) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l)

Since: base-4.16.0.0

Instance details

Defined in GHC.Generics

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l) x #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l) x -> (a, b, c, d, e, f, g, h, i, j, k, l) #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m)

Since: base-4.16.0.0

Instance details

Defined in GHC.Generics

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) = D1 ('MetaData "Tuple13" "GHC.Tuple.Prim" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f)))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 k)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 l) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) x #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m) #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m, n) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n)

Since: base-4.16.0.0

Instance details

Defined in GHC.Generics

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) = D1 ('MetaData "Tuple14" "GHC.Tuple.Prim" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g)))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 k) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 l)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 n))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) x #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)

Since: base-4.16.0.0

Instance details

Defined in GHC.Generics

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) = D1 ('MetaData "Tuple15" "GHC.Tuple.Prim" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g)))) :*: (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 k))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 l) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 n) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 o))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) x #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) #

class FromJSON a where #

A type that can be converted from JSON, with the possibility of failure.

In many cases, you can get the compiler to generate parsing code for you (see below). To begin, let's cover writing an instance by hand.

There are various reasons a conversion could fail. For example, an Object could be missing a required key, an Array could be of the wrong size, or a value could be of an incompatible type.

The basic ways to signal a failed conversion are as follows:

  • fail yields a custom error message: it is the recommended way of reporting a failure;
  • empty (or mzero) is uninformative: use it when the error is meant to be caught by some (<|>);
  • typeMismatch can be used to report a failure when the encountered value is not of the expected JSON type; unexpected is an appropriate alternative when more than one type may be expected, or to keep the expected type implicit.

prependFailure (or modifyFailure) add more information to a parser's error messages.

An example type and instance using typeMismatch and prependFailure:

-- Allow ourselves to write Text literals.
{-# LANGUAGE OverloadedStrings #-}

data Coord = Coord { x :: Double, y :: Double }

instance FromJSON Coord where
    parseJSON (Object v) = Coord
        <$> v .: "x"
        <*> v .: "y"

    -- We do not expect a non-Object value here.
    -- We could use empty to fail, but typeMismatch
    -- gives a much more informative error message.
    parseJSON invalid    =
        prependFailure "parsing Coord failed, "
            (typeMismatch "Object" invalid)

For this common case of only being concerned with a single type of JSON value, the functions withObject, withScientific, etc. are provided. Their use is to be preferred when possible, since they are more terse. Using withObject, we can rewrite the above instance (assuming the same language extension and data type) as:

instance FromJSON Coord where
    parseJSON = withObject "Coord" $ \v -> Coord
        <$> v .: "x"
        <*> v .: "y"

Instead of manually writing your FromJSON instance, there are two options to do it automatically:

  • Data.Aeson.TH provides Template Haskell functions which will derive an instance at compile time. The generated instance is optimized for your type so it will probably be more efficient than the following option.
  • The compiler can provide a default generic implementation for parseJSON.

To use the second, simply add a deriving Generic clause to your datatype and declare a FromJSON instance for your datatype without giving a definition for parseJSON.

For example, the previous example can be simplified to just:

{-# LANGUAGE DeriveGeneric #-}

import GHC.Generics

data Coord = Coord { x :: Double, y :: Double } deriving Generic

instance FromJSON Coord

or using the DerivingVia extension

deriving via Generically Coord instance FromJSON Coord

The default implementation will be equivalent to parseJSON = genericParseJSON defaultOptions; if you need different options, you can customize the generic decoding by defining:

customOptions = defaultOptions
                { fieldLabelModifier = map toUpper
                }

instance FromJSON Coord where
    parseJSON = genericParseJSON customOptions

Minimal complete definition

Nothing

Methods

parseJSON :: Value -> Parser a #

default parseJSON :: (Generic a, GFromJSON Zero (Rep a)) => Value -> Parser a #

parseJSONList :: Value -> Parser [a] #

omittedField :: Maybe a #

Default value for optional fields. Used by (.:?=) operator, and Generics and TH deriving with allowOmittedFields = True (default).

Since: aeson-2.2.0.0

Instances

Instances details
FromJSON Key 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON DotNetTime 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Value 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON All

Since: aeson-2.2.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Any

Since: aeson-2.2.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Version 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON CTime 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Void 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Int16 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Int32 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Int64 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Int8 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Word16 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Word32 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Word64 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Word8 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON IntSet 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Ordering 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON URI

Since: aeson-2.2.0.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON AdditionalProperties 
Instance details

Defined in Data.OpenApi.Internal

FromJSON ApiKeyLocation 
Instance details

Defined in Data.OpenApi.Internal

FromJSON ApiKeyParams 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Callback 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Components 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Contact 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Discriminator 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Encoding 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Example 
Instance details

Defined in Data.OpenApi.Internal

FromJSON ExpressionOrValue

All strings are parsed as expressions

Instance details

Defined in Data.OpenApi.Internal

FromJSON ExternalDocs 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Header 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Info 
Instance details

Defined in Data.OpenApi.Internal

FromJSON License 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Link 
Instance details

Defined in Data.OpenApi.Internal

FromJSON MediaTypeObject 
Instance details

Defined in Data.OpenApi.Internal

FromJSON MimeList 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OAuth2AuthorizationCodeFlow 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OAuth2ClientCredentialsFlow 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OAuth2Flows 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OAuth2ImplicitFlow 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OAuth2PasswordFlow 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OpenApi 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OpenApiItems 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OpenApiSpecVersion 
Instance details

Defined in Data.OpenApi.Internal

FromJSON OpenApiType 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Operation 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Param 
Instance details

Defined in Data.OpenApi.Internal

FromJSON ParamLocation 
Instance details

Defined in Data.OpenApi.Internal

FromJSON PathItem 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Reference 
Instance details

Defined in Data.OpenApi.Internal

FromJSON RequestBody 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Response 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Responses 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Schema 
Instance details

Defined in Data.OpenApi.Internal

FromJSON SecurityDefinitions 
Instance details

Defined in Data.OpenApi.Internal

FromJSON SecurityRequirement 
Instance details

Defined in Data.OpenApi.Internal

FromJSON SecurityScheme 
Instance details

Defined in Data.OpenApi.Internal

FromJSON SecuritySchemeType 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Server 
Instance details

Defined in Data.OpenApi.Internal

FromJSON ServerVariable 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Style 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Tag 
Instance details

Defined in Data.OpenApi.Internal

FromJSON URL 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Xml 
Instance details

Defined in Data.OpenApi.Internal

FromJSON Scientific 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Text 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Text 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON ShortText

Since: aeson-2.0.2.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON CalendarDiffDays 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Day 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Month 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Quarter 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON QuarterOfYear 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON DayOfWeek 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON DiffTime

This instance includes a bounds check to prevent maliciously large inputs to fill up the memory of the target system. You can newtype Scientific and provide your own instance using withScientific if you want to allow larger inputs.

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON NominalDiffTime

This instance includes a bounds check to prevent maliciously large inputs to fill up the memory of the target system. You can newtype Scientific and provide your own instance using withScientific if you want to allow larger inputs.

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON SystemTime 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON UTCTime 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON CalendarDiffTime 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON LocalTime 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON TimeOfDay 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON ZonedTime

Supported string formats:

YYYY-MM-DD HH:MMZ YYYY-MM-DD HH:MM:SSZ YYYY-MM-DD HH:MM:SS.SSSZ

The first space may instead be a T, and the second space is optional. The Z represents UTC. The Z may be replaced with a time zone offset of the form +0000 or -08:00, where the first two digits are hours, the : is optional and the second two digits (also optional) are minutes.

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON UUID 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Integer

This instance includes a bounds check to prevent maliciously large inputs to fill up the memory of the target system. You can newtype Scientific and provide your own instance using withScientific if you want to allow larger inputs.

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Natural 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON () 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Bool 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Char 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Double 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Float 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Int 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON Word 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON v => FromJSON (KeyMap v)

Since: aeson-2.0.1.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Identity a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (First a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Last a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Down a)

Since: aeson-2.2.0.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (First a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Last a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Max a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Min a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (WrappedMonoid a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Dual a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Product a)

Since: aeson-2.2.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Sum a)

Since: aeson-2.2.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (NonEmpty a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

(Generic a, GFromJSON Zero (Rep a)) => FromJSON (Generically a)

Since: aeson-2.1.0.0

Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSON a, Integral a) => FromJSON (Ratio a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (IntMap a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Seq a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

(Ord a, FromJSON a) => FromJSON (Set a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON v => FromJSON (Tree v) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON1 f => FromJSON (Fix f)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSON1 f, Functor f) => FromJSON (Mu f)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSON1 f, Functor f) => FromJSON (Nu f)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (DNonEmpty a)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (DList a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

(Eq a, Hashable a, FromJSON a) => FromJSON (InsOrdHashSet a) 
Instance details

Defined in Data.HashSet.InsOrd

(Eq p, FromJSON p, AesonDefaultValue p) => FromJSON (OAuth2Flow p) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON (Referenced Callback) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON (Referenced Example) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON (Referenced Header) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON (Referenced Link) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON (Referenced Param) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON (Referenced RequestBody) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON (Referenced Response) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON (Referenced Schema) 
Instance details

Defined in Data.OpenApi.Internal

FromJSON a => FromJSON (Array a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

(Prim a, FromJSON a) => FromJSON (PrimArray a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (SmallArray a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Maybe a)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

(Eq a, Hashable a, FromJSON a) => FromJSON (HashSet a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Vector a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (Vector a) #

parseJSONList :: Value -> Parser [Vector a] #

omittedField :: Maybe (Vector a) #

(Prim a, FromJSON a) => FromJSON (Vector a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (Vector a) #

parseJSONList :: Value -> Parser [Vector a] #

omittedField :: Maybe (Vector a) #

(Storable a, FromJSON a) => FromJSON (Vector a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (Vector a) #

parseJSONList :: Value -> Parser [Vector a] #

omittedField :: Maybe (Vector a) #

(Vector Vector a, FromJSON a) => FromJSON (Vector a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Maybe a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON (Solo a)

Since: aeson-2.0.2.0

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON a => FromJSON [a] 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser [a] #

parseJSONList :: Value -> Parser [[a]] #

omittedField :: Maybe [a] #

(FromJSON a, FromJSON b) => FromJSON (Either a b) 
Instance details

Defined in Data.Aeson.Types.FromJSON

HasResolution a => FromJSON (Fixed a)

This instance includes a bounds check to prevent maliciously large inputs to fill up the memory of the target system. You can newtype Scientific and provide your own instance using withScientific if you want to allow larger inputs.

Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON (Proxy a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSONKey k, Ord k, FromJSON v) => FromJSON (Map k v) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (Map k v) #

parseJSONList :: Value -> Parser [Map k v] #

omittedField :: Maybe (Map k v) #

(Eq k, Hashable k, FromJSONKey k, FromJSON v) => FromJSON (InsOrdHashMap k v) 
Instance details

Defined in Data.HashMap.Strict.InsOrd

(FromJSON a, FromJSON b) => FromJSON (Either a b)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSON a, FromJSON b) => FromJSON (These a b)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSON a, FromJSON b) => FromJSON (Pair a b)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (Pair a b) #

parseJSONList :: Value -> Parser [Pair a b] #

omittedField :: Maybe (Pair a b) #

(FromJSON a, FromJSON b) => FromJSON (These a b)

Since: aeson-1.5.1.0

Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSON v, FromJSONKey k, Eq k, Hashable k) => FromJSON (HashMap k v) 
Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSON a, FromJSON b) => FromJSON (a, b) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b) #

parseJSONList :: Value -> Parser [(a, b)] #

omittedField :: Maybe (a, b) #

FromJSON a => FromJSON (Const a b) 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSON b => FromJSON (Tagged a b) 
Instance details

Defined in Data.Aeson.Types.FromJSON

(FromJSON1 f, FromJSON1 g, FromJSON a) => FromJSON (These1 f g a)

Since: aeson-1.5.1.0

Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (These1 f g a) #

parseJSONList :: Value -> Parser [These1 f g a] #

omittedField :: Maybe (These1 f g a) #

(FromJSON a, FromJSON b, FromJSON c) => FromJSON (a, b, c) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c) #

parseJSONList :: Value -> Parser [(a, b, c)] #

omittedField :: Maybe (a, b, c) #

(FromJSON1 f, FromJSON1 g, FromJSON a) => FromJSON (Product f g a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (Product f g a) #

parseJSONList :: Value -> Parser [Product f g a] #

omittedField :: Maybe (Product f g a) #

(FromJSON1 f, FromJSON1 g, FromJSON a) => FromJSON (Sum f g a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (Sum f g a) #

parseJSONList :: Value -> Parser [Sum f g a] #

omittedField :: Maybe (Sum f g a) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d) => FromJSON (a, b, c, d) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d) #

parseJSONList :: Value -> Parser [(a, b, c, d)] #

omittedField :: Maybe (a, b, c, d) #

(FromJSON1 f, FromJSON1 g, FromJSON a) => FromJSON (Compose f g a) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (Compose f g a) #

parseJSONList :: Value -> Parser [Compose f g a] #

omittedField :: Maybe (Compose f g a) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e) => FromJSON (a, b, c, d, e) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e) #

parseJSONList :: Value -> Parser [(a, b, c, d, e)] #

omittedField :: Maybe (a, b, c, d, e) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f) => FromJSON (a, b, c, d, e, f) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f)] #

omittedField :: Maybe (a, b, c, d, e, f) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g) => FromJSON (a, b, c, d, e, f, g) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g)] #

omittedField :: Maybe (a, b, c, d, e, f, g) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g, FromJSON h) => FromJSON (a, b, c, d, e, f, g, h) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g, h) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g, h)] #

omittedField :: Maybe (a, b, c, d, e, f, g, h) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g, FromJSON h, FromJSON i) => FromJSON (a, b, c, d, e, f, g, h, i) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g, h, i) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g, h, i)] #

omittedField :: Maybe (a, b, c, d, e, f, g, h, i) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g, FromJSON h, FromJSON i, FromJSON j) => FromJSON (a, b, c, d, e, f, g, h, i, j) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g, h, i, j) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g, h, i, j)] #

omittedField :: Maybe (a, b, c, d, e, f, g, h, i, j) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g, FromJSON h, FromJSON i, FromJSON j, FromJSON k) => FromJSON (a, b, c, d, e, f, g, h, i, j, k) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g, h, i, j, k) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g, h, i, j, k)] #

omittedField :: Maybe (a, b, c, d, e, f, g, h, i, j, k) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g, FromJSON h, FromJSON i, FromJSON j, FromJSON k, FromJSON l) => FromJSON (a, b, c, d, e, f, g, h, i, j, k, l) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g, h, i, j, k, l) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g, h, i, j, k, l)] #

omittedField :: Maybe (a, b, c, d, e, f, g, h, i, j, k, l) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g, FromJSON h, FromJSON i, FromJSON j, FromJSON k, FromJSON l, FromJSON m) => FromJSON (a, b, c, d, e, f, g, h, i, j, k, l, m) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g, h, i, j, k, l, m) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g, h, i, j, k, l, m)] #

omittedField :: Maybe (a, b, c, d, e, f, g, h, i, j, k, l, m) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g, FromJSON h, FromJSON i, FromJSON j, FromJSON k, FromJSON l, FromJSON m, FromJSON n) => FromJSON (a, b, c, d, e, f, g, h, i, j, k, l, m, n) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g, h, i, j, k, l, m, n) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] #

omittedField :: Maybe (a, b, c, d, e, f, g, h, i, j, k, l, m, n) #

(FromJSON a, FromJSON b, FromJSON c, FromJSON d, FromJSON e, FromJSON f, FromJSON g, FromJSON h, FromJSON i, FromJSON j, FromJSON k, FromJSON l, FromJSON m, FromJSON n, FromJSON o) => FromJSON (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) 
Instance details

Defined in Data.Aeson.Types.FromJSON

Methods

parseJSON :: Value -> Parser (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) #

parseJSONList :: Value -> Parser [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] #

omittedField :: Maybe (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) #

class ToJSON a where #

A type that can be converted to JSON.

Instances in general must specify toJSON and should (but don't need to) specify toEncoding.

An example type and instance:

-- Allow ourselves to write Text literals.
{-# LANGUAGE OverloadedStrings #-}

data Coord = Coord { x :: Double, y :: Double }

instance ToJSON Coord where
  toJSON (Coord x y) = object ["x" .= x, "y" .= y]

  toEncoding (Coord x y) = pairs ("x" .= x <> "y" .= y)

Instead of manually writing your ToJSON instance, there are two options to do it automatically:

  • Data.Aeson.TH provides Template Haskell functions which will derive an instance at compile time. The generated instance is optimized for your type so it will probably be more efficient than the following option.
  • The compiler can provide a default generic implementation for toJSON.

To use the second, simply add a deriving Generic clause to your datatype and declare a ToJSON instance. If you require nothing other than defaultOptions, it is sufficient to write (and this is the only alternative where the default toJSON implementation is sufficient):

{-# LANGUAGE DeriveGeneric #-}

import GHC.Generics

data Coord = Coord { x :: Double, y :: Double } deriving Generic

instance ToJSON Coord where
    toEncoding = genericToEncoding defaultOptions

or more conveniently using the DerivingVia extension

deriving via Generically Coord instance ToJSON Coord

If on the other hand you wish to customize the generic decoding, you have to implement both methods:

customOptions = defaultOptions
                { fieldLabelModifier = map toUpper
                }

instance ToJSON Coord where
    toJSON     = genericToJSON customOptions
    toEncoding = genericToEncoding customOptions

Previous versions of this library only had the toJSON method. Adding toEncoding had two reasons:

  1. toEncoding is more efficient for the common case that the output of toJSON is directly serialized to a ByteString. Further, expressing either method in terms of the other would be non-optimal.
  2. The choice of defaults allows a smooth transition for existing users: Existing instances that do not define toEncoding still compile and have the correct semantics. This is ensured by making the default implementation of toEncoding use toJSON. This produces correct results, but since it performs an intermediate conversion to a Value, it will be less efficient than directly emitting an Encoding. (this also means that specifying nothing more than instance ToJSON Coord would be sufficient as a generically decoding instance, but there probably exists no good reason to not specify toEncoding in new instances.)

Minimal complete definition

Nothing

Methods

toJSON :: a -> Value #

Convert a Haskell value to a JSON-friendly intermediate type.

default toJSON :: (Generic a, GToJSON' Value Zero (Rep a)) => a -> Value #

toEncoding :: a -> Encoding #

Encode a Haskell value as JSON.

The default implementation of this method creates an intermediate Value using toJSON. This provides source-level compatibility for people upgrading from older versions of this library, but obviously offers no performance advantage.

To benefit from direct encoding, you must provide an implementation for this method. The easiest way to do so is by having your types implement Generic using the DeriveGeneric extension, and then have GHC generate a method body as follows.

instance ToJSON Coord where
    toEncoding = genericToEncoding defaultOptions

toJSONList :: [a] -> Value #

toEncodingList :: [a] -> Encoding #

omitField :: a -> Bool #

Defines when it is acceptable to omit a field of this type from a record. Used by (.?=) operator, and Generics and TH deriving with omitNothingFields = True.

Since: aeson-2.2.0.0

Instances

Instances details
ToJSON Key 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON DotNetTime 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Value 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON All

Since: aeson-2.2.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Any

Since: aeson-2.2.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Version 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON CTime 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Void 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Int16 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Int32 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Int64 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Int8 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Word16 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Word32 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Word64 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Word8 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON IntSet 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Ordering 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Url 
Instance details

Defined in Mig.Core.Class.Url

ToJSON Link 
Instance details

Defined in Mig.Extra.Server.Html

ToJSON URI

Since: aeson-2.2.0.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON AdditionalProperties 
Instance details

Defined in Data.OpenApi.Internal

ToJSON ApiKeyLocation 
Instance details

Defined in Data.OpenApi.Internal

ToJSON ApiKeyParams 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Callback 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Components 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Contact 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Discriminator 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Encoding 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Example 
Instance details

Defined in Data.OpenApi.Internal

ToJSON ExpressionOrValue 
Instance details

Defined in Data.OpenApi.Internal

ToJSON ExternalDocs 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Header 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Info 
Instance details

Defined in Data.OpenApi.Internal

ToJSON License 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Link 
Instance details

Defined in Data.OpenApi.Internal

ToJSON MediaTypeObject 
Instance details

Defined in Data.OpenApi.Internal

ToJSON MimeList 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OAuth2AuthorizationCodeFlow 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OAuth2ClientCredentialsFlow 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OAuth2Flows 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OAuth2ImplicitFlow 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OAuth2PasswordFlow 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OpenApi 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OpenApiItems

As for nullary schema for 0-arity type constructors, see https://github.com/GetShopTV/swagger2/issues/167.

>>> BSL.putStrLn $ encodePretty (OpenApiItemsArray [])
{
    "example": [],
    "items": {},
    "maxItems": 0
}
Instance details

Defined in Data.OpenApi.Internal

ToJSON OpenApiSpecVersion 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OpenApiType 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Operation 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Param 
Instance details

Defined in Data.OpenApi.Internal

ToJSON ParamLocation 
Instance details

Defined in Data.OpenApi.Internal

ToJSON PathItem 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Reference 
Instance details

Defined in Data.OpenApi.Internal

ToJSON RequestBody 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Response 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Responses 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Schema 
Instance details

Defined in Data.OpenApi.Internal

ToJSON SecurityDefinitions 
Instance details

Defined in Data.OpenApi.Internal

ToJSON SecurityRequirement 
Instance details

Defined in Data.OpenApi.Internal

ToJSON SecurityScheme 
Instance details

Defined in Data.OpenApi.Internal

ToJSON SecuritySchemeType 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Server 
Instance details

Defined in Data.OpenApi.Internal

ToJSON ServerVariable 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Style 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Tag 
Instance details

Defined in Data.OpenApi.Internal

ToJSON URL 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Xml 
Instance details

Defined in Data.OpenApi.Internal

ToJSON Scientific 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Text 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Text 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON ShortText

Since: aeson-2.0.2.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON CalendarDiffDays 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Day 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Month 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Quarter 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON QuarterOfYear 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON DayOfWeek 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON DiffTime 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON NominalDiffTime 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON SystemTime

Encoded as number

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON UTCTime 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON CalendarDiffTime 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON LocalTime 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON TimeOfDay 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON ZonedTime 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON UUID 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Integer 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Natural 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON () 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: () -> Value #

toEncoding :: () -> Encoding #

toJSONList :: [()] -> Value #

toEncodingList :: [()] -> Encoding #

omitField :: () -> Bool #

ToJSON Bool 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Char 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Double 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Float 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Int 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON Word 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON v => ToJSON (KeyMap v) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Identity a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (First a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Last a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Down a)

Since: aeson-2.2.0.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (First a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Last a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Max a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Max a -> Value #

toEncoding :: Max a -> Encoding #

toJSONList :: [Max a] -> Value #

toEncodingList :: [Max a] -> Encoding #

omitField :: Max a -> Bool #

ToJSON a => ToJSON (Min a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Min a -> Value #

toEncoding :: Min a -> Encoding #

toJSONList :: [Min a] -> Value #

toEncodingList :: [Min a] -> Encoding #

omitField :: Min a -> Bool #

ToJSON a => ToJSON (WrappedMonoid a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Dual a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Product a)

Since: aeson-2.2.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Sum a)

Since: aeson-2.2.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Sum a -> Value #

toEncoding :: Sum a -> Encoding #

toJSONList :: [Sum a] -> Value #

toEncodingList :: [Sum a] -> Encoding #

omitField :: Sum a -> Bool #

ToJSON a => ToJSON (NonEmpty a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

(Generic a, GToJSON' Value Zero (Rep a), GToJSON' Encoding Zero (Rep a)) => ToJSON (Generically a)

Since: aeson-2.1.0.0

Instance details

Defined in Data.Aeson.Types.ToJSON

(ToJSON a, Integral a) => ToJSON (Ratio a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (IntMap a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Seq a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Seq a -> Value #

toEncoding :: Seq a -> Encoding #

toJSONList :: [Seq a] -> Value #

toEncodingList :: [Seq a] -> Encoding #

omitField :: Seq a -> Bool #

ToJSON a => ToJSON (Set a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Set a -> Value #

toEncoding :: Set a -> Encoding #

toJSONList :: [Set a] -> Value #

toEncodingList :: [Set a] -> Encoding #

omitField :: Set a -> Bool #

ToJSON v => ToJSON (Tree v) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON1 f => ToJSON (Fix f)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Fix f -> Value #

toEncoding :: Fix f -> Encoding #

toJSONList :: [Fix f] -> Value #

toEncodingList :: [Fix f] -> Encoding #

omitField :: Fix f -> Bool #

(ToJSON1 f, Functor f) => ToJSON (Mu f)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Mu f -> Value #

toEncoding :: Mu f -> Encoding #

toJSONList :: [Mu f] -> Value #

toEncodingList :: [Mu f] -> Encoding #

omitField :: Mu f -> Bool #

(ToJSON1 f, Functor f) => ToJSON (Nu f)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Nu f -> Value #

toEncoding :: Nu f -> Encoding #

toJSONList :: [Nu f] -> Value #

toEncodingList :: [Nu f] -> Encoding #

omitField :: Nu f -> Bool #

ToJSON a => ToJSON (DNonEmpty a)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (DList a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (InsOrdHashSet a) 
Instance details

Defined in Data.HashSet.InsOrd

(Eq p, ToJSON p, AesonDefaultValue p) => ToJSON (OAuth2Flow p) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON (Referenced Callback) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON (Referenced Example) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON (Referenced Header) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON (Referenced Link) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON (Referenced Param) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON (Referenced RequestBody) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON (Referenced Response) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON (Referenced Schema) 
Instance details

Defined in Data.OpenApi.Internal

ToJSON a => ToJSON (Array a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

(Prim a, ToJSON a) => ToJSON (PrimArray a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (SmallArray a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Maybe a)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (HashSet a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Vector a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Vector a -> Value #

toEncoding :: Vector a -> Encoding #

toJSONList :: [Vector a] -> Value #

toEncodingList :: [Vector a] -> Encoding #

omitField :: Vector a -> Bool #

(Prim a, ToJSON a) => ToJSON (Vector a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Vector a -> Value #

toEncoding :: Vector a -> Encoding #

toJSONList :: [Vector a] -> Value #

toEncodingList :: [Vector a] -> Encoding #

omitField :: Vector a -> Bool #

(Storable a, ToJSON a) => ToJSON (Vector a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Vector a -> Value #

toEncoding :: Vector a -> Encoding #

toJSONList :: [Vector a] -> Value #

toEncodingList :: [Vector a] -> Encoding #

omitField :: Vector a -> Bool #

(Vector Vector a, ToJSON a) => ToJSON (Vector a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Maybe a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON (Solo a)

Since: aeson-2.0.2.0

Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON a => ToJSON [a] 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: [a] -> Value #

toEncoding :: [a] -> Encoding #

toJSONList :: [[a]] -> Value #

toEncodingList :: [[a]] -> Encoding #

omitField :: [a] -> Bool #

(ToJSON a, ToJSON b) => ToJSON (Either a b) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Either a b -> Value #

toEncoding :: Either a b -> Encoding #

toJSONList :: [Either a b] -> Value #

toEncodingList :: [Either a b] -> Encoding #

omitField :: Either a b -> Bool #

HasResolution a => ToJSON (Fixed a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSON (Proxy a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

(ToJSON v, ToJSONKey k) => ToJSON (Map k v) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Map k v -> Value #

toEncoding :: Map k v -> Encoding #

toJSONList :: [Map k v] -> Value #

toEncodingList :: [Map k v] -> Encoding #

omitField :: Map k v -> Bool #

(ToJSONKey k, ToJSON v) => ToJSON (InsOrdHashMap k v) 
Instance details

Defined in Data.HashMap.Strict.InsOrd

(ToJSON a, ToJSON b) => ToJSON (Either a b)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Either a b -> Value #

toEncoding :: Either a b -> Encoding #

toJSONList :: [Either a b] -> Value #

toEncodingList :: [Either a b] -> Encoding #

omitField :: Either a b -> Bool #

(ToJSON a, ToJSON b) => ToJSON (These a b)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: These a b -> Value #

toEncoding :: These a b -> Encoding #

toJSONList :: [These a b] -> Value #

toEncodingList :: [These a b] -> Encoding #

omitField :: These a b -> Bool #

(ToJSON a, ToJSON b) => ToJSON (Pair a b)

Since: aeson-1.5.3.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Pair a b -> Value #

toEncoding :: Pair a b -> Encoding #

toJSONList :: [Pair a b] -> Value #

toEncodingList :: [Pair a b] -> Encoding #

omitField :: Pair a b -> Bool #

(ToJSON a, ToJSON b) => ToJSON (These a b)

Since: aeson-1.5.1.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: These a b -> Value #

toEncoding :: These a b -> Encoding #

toJSONList :: [These a b] -> Value #

toEncodingList :: [These a b] -> Encoding #

omitField :: These a b -> Bool #

(ToJSON v, ToJSONKey k) => ToJSON (HashMap k v) 
Instance details

Defined in Data.Aeson.Types.ToJSON

(ToJSON a, ToJSON b) => ToJSON (a, b) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b) -> Value #

toEncoding :: (a, b) -> Encoding #

toJSONList :: [(a, b)] -> Value #

toEncodingList :: [(a, b)] -> Encoding #

omitField :: (a, b) -> Bool #

ToJSON a => ToJSON (Const a b) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Const a b -> Value #

toEncoding :: Const a b -> Encoding #

toJSONList :: [Const a b] -> Value #

toEncodingList :: [Const a b] -> Encoding #

omitField :: Const a b -> Bool #

ToJSON b => ToJSON (Tagged a b) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Tagged a b -> Value #

toEncoding :: Tagged a b -> Encoding #

toJSONList :: [Tagged a b] -> Value #

toEncodingList :: [Tagged a b] -> Encoding #

omitField :: Tagged a b -> Bool #

(ToJSON1 f, ToJSON1 g, ToJSON a) => ToJSON (These1 f g a)

Since: aeson-1.5.1.0

Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: These1 f g a -> Value #

toEncoding :: These1 f g a -> Encoding #

toJSONList :: [These1 f g a] -> Value #

toEncodingList :: [These1 f g a] -> Encoding #

omitField :: These1 f g a -> Bool #

(ToJSON a, ToJSON b, ToJSON c) => ToJSON (a, b, c) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c) -> Value #

toEncoding :: (a, b, c) -> Encoding #

toJSONList :: [(a, b, c)] -> Value #

toEncodingList :: [(a, b, c)] -> Encoding #

omitField :: (a, b, c) -> Bool #

(ToJSON1 f, ToJSON1 g, ToJSON a) => ToJSON (Product f g a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Product f g a -> Value #

toEncoding :: Product f g a -> Encoding #

toJSONList :: [Product f g a] -> Value #

toEncodingList :: [Product f g a] -> Encoding #

omitField :: Product f g a -> Bool #

(ToJSON1 f, ToJSON1 g, ToJSON a) => ToJSON (Sum f g a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Sum f g a -> Value #

toEncoding :: Sum f g a -> Encoding #

toJSONList :: [Sum f g a] -> Value #

toEncodingList :: [Sum f g a] -> Encoding #

omitField :: Sum f g a -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d) => ToJSON (a, b, c, d) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d) -> Value #

toEncoding :: (a, b, c, d) -> Encoding #

toJSONList :: [(a, b, c, d)] -> Value #

toEncodingList :: [(a, b, c, d)] -> Encoding #

omitField :: (a, b, c, d) -> Bool #

(ToJSON1 f, ToJSON1 g, ToJSON a) => ToJSON (Compose f g a) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: Compose f g a -> Value #

toEncoding :: Compose f g a -> Encoding #

toJSONList :: [Compose f g a] -> Value #

toEncodingList :: [Compose f g a] -> Encoding #

omitField :: Compose f g a -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e) => ToJSON (a, b, c, d, e) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e) -> Value #

toEncoding :: (a, b, c, d, e) -> Encoding #

toJSONList :: [(a, b, c, d, e)] -> Value #

toEncodingList :: [(a, b, c, d, e)] -> Encoding #

omitField :: (a, b, c, d, e) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f) => ToJSON (a, b, c, d, e, f) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f) -> Value #

toEncoding :: (a, b, c, d, e, f) -> Encoding #

toJSONList :: [(a, b, c, d, e, f)] -> Value #

toEncodingList :: [(a, b, c, d, e, f)] -> Encoding #

omitField :: (a, b, c, d, e, f) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g) => ToJSON (a, b, c, d, e, f, g) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g) -> Value #

toEncoding :: (a, b, c, d, e, f, g) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g)] -> Encoding #

omitField :: (a, b, c, d, e, f, g) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g, ToJSON h) => ToJSON (a, b, c, d, e, f, g, h) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g, h) -> Value #

toEncoding :: (a, b, c, d, e, f, g, h) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g, h)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g, h)] -> Encoding #

omitField :: (a, b, c, d, e, f, g, h) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g, ToJSON h, ToJSON i) => ToJSON (a, b, c, d, e, f, g, h, i) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g, h, i) -> Value #

toEncoding :: (a, b, c, d, e, f, g, h, i) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g, h, i)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g, h, i)] -> Encoding #

omitField :: (a, b, c, d, e, f, g, h, i) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g, ToJSON h, ToJSON i, ToJSON j) => ToJSON (a, b, c, d, e, f, g, h, i, j) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g, h, i, j) -> Value #

toEncoding :: (a, b, c, d, e, f, g, h, i, j) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g, h, i, j)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g, h, i, j)] -> Encoding #

omitField :: (a, b, c, d, e, f, g, h, i, j) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g, ToJSON h, ToJSON i, ToJSON j, ToJSON k) => ToJSON (a, b, c, d, e, f, g, h, i, j, k) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g, h, i, j, k) -> Value #

toEncoding :: (a, b, c, d, e, f, g, h, i, j, k) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g, h, i, j, k)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g, h, i, j, k)] -> Encoding #

omitField :: (a, b, c, d, e, f, g, h, i, j, k) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g, ToJSON h, ToJSON i, ToJSON j, ToJSON k, ToJSON l) => ToJSON (a, b, c, d, e, f, g, h, i, j, k, l) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g, h, i, j, k, l) -> Value #

toEncoding :: (a, b, c, d, e, f, g, h, i, j, k, l) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g, h, i, j, k, l)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g, h, i, j, k, l)] -> Encoding #

omitField :: (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g, ToJSON h, ToJSON i, ToJSON j, ToJSON k, ToJSON l, ToJSON m) => ToJSON (a, b, c, d, e, f, g, h, i, j, k, l, m) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Value #

toEncoding :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m)] -> Encoding #

omitField :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g, ToJSON h, ToJSON i, ToJSON j, ToJSON k, ToJSON l, ToJSON m, ToJSON n) => ToJSON (a, b, c, d, e, f, g, h, i, j, k, l, m, n) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Value #

toEncoding :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] -> Encoding #

omitField :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool #

(ToJSON a, ToJSON b, ToJSON c, ToJSON d, ToJSON e, ToJSON f, ToJSON g, ToJSON h, ToJSON i, ToJSON j, ToJSON k, ToJSON l, ToJSON m, ToJSON n, ToJSON o) => ToJSON (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) 
Instance details

Defined in Data.Aeson.Types.ToJSON

Methods

toJSON :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Value #

toEncoding :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Encoding #

toJSONList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] -> Value #

toEncodingList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] -> Encoding #

omitField :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool #

data Text #

A space efficient, packed, unboxed Unicode text type.

Instances

Instances details
FromJSON Text 
Instance details

Defined in Data.Aeson.Types.FromJSON

FromJSONKey Text 
Instance details

Defined in Data.Aeson.Types.FromJSON

ToJSON Text 
Instance details

Defined in Data.Aeson.Types.ToJSON

ToJSONKey Text 
Instance details

Defined in Data.Aeson.Types.ToJSON

Chunk Text 
Instance details

Defined in Data.Attoparsec.Internal.Types

Associated Types

type ChunkElem Text 
Instance details

Defined in Data.Attoparsec.Internal.Types

ToMarkup Text 
Instance details

Defined in Text.Blaze

ToValue Text 
Instance details

Defined in Text.Blaze

FoldCase Text 
Instance details

Defined in Data.CaseInsensitive.Internal

Methods

foldCase :: Text -> Text #

foldCaseList :: [Text] -> [Text]

FromFormKey Text 
Instance details

Defined in Web.Internal.FormUrlEncoded

ToFormKey Text 
Instance details

Defined in Web.Internal.FormUrlEncoded

Methods

toFormKey :: Text -> Text #

FromHttpApiData Text 
Instance details

Defined in Web.Internal.HttpApiData

ToHttpApiData Text 
Instance details

Defined in Web.Internal.HttpApiData

QueryKeyLike Text 
Instance details

Defined in Network.HTTP.Types.QueryLike

QueryValueLike Text 
Instance details

Defined in Network.HTTP.Types.QueryLike

Ixed Text 
Instance details

Defined in Control.Lens.At

ToText Text 
Instance details

Defined in Mig.Core.Types.Http

Methods

toText :: Text -> Text #

AesonDefaultValue Text 
Instance details

Defined in Data.OpenApi.Internal.AesonUtils

ToParamSchema Text 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToSchema Text 
Instance details

Defined in Data.OpenApi.Internal.Schema

SwaggerMonoid Text 
Instance details

Defined in Data.OpenApi.Internal.Utils

ToMediaType Text 
Instance details

Defined in Mig.Core.Class.MediaType

HasAuthorizationUrl OAuth2AuthorizationCodeFlow AuthorizationURL 
Instance details

Defined in Data.OpenApi.Lens

HasAuthorizationUrl OAuth2ImplicitFlow AuthorizationURL 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Response Text 
Instance details

Defined in Data.OpenApi.Lens

HasName License Text 
Instance details

Defined in Data.OpenApi.Lens

Methods

name :: Lens' License Text #

HasName Param Text 
Instance details

Defined in Data.OpenApi.Lens

Methods

name :: Lens' Param Text #

HasName Tag TagName 
Instance details

Defined in Data.OpenApi.Lens

Methods

name :: Lens' Tag TagName #

HasPropertyName Discriminator Text 
Instance details

Defined in Data.OpenApi.Lens

HasTitle Info Text 
Instance details

Defined in Data.OpenApi.Lens

Methods

title :: Lens' Info Text #

HasTokenUrl OAuth2AuthorizationCodeFlow TokenURL 
Instance details

Defined in Data.OpenApi.Lens

HasTokenUrl OAuth2ClientCredentialsFlow TokenURL 
Instance details

Defined in Data.OpenApi.Lens

HasTokenUrl OAuth2PasswordFlow TokenURL 
Instance details

Defined in Data.OpenApi.Lens

HasUrl Server Text 
Instance details

Defined in Data.OpenApi.Lens

Methods

url :: Lens' Server Text #

HasVersion Info Text 
Instance details

Defined in Data.OpenApi.Lens

Methods

version :: Lens' Info Text #

FromReqBody Text Text 
Instance details

Defined in Mig.Core.Class.MediaType

ToRespBody Text Text 
Instance details

Defined in Mig.Core.Class.MediaType

ToRespBody Text Text 
Instance details

Defined in Mig.Core.Class.MediaType

HasCallbacks Components (Definitions Callback) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Example (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription ExternalDocs (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Header (Maybe HeaderName) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Info (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Link (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Operation (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Param (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription PathItem (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription RequestBody (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Schema (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription SecurityScheme (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Server (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasDescription Tag (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasEmail Contact (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasExamples Components (Definitions Example) 
Instance details

Defined in Data.OpenApi.Lens

HasFormat Schema (Maybe Format) 
Instance details

Defined in Data.OpenApi.Lens

HasSchema s Schema => HasFormat s (Maybe Format) 
Instance details

Defined in Data.OpenApi.Lens

Methods

format :: Lens' s (Maybe Format) #

HasHeaders Components (Definitions Header) 
Instance details

Defined in Data.OpenApi.Lens

HasLinks Components (Definitions Link) 
Instance details

Defined in Data.OpenApi.Lens

HasName Contact (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasName NamedSchema (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasName Xml (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

Methods

name :: Lens' Xml (Maybe Text) #

HasNamespace Xml (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasOperationId Link (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasOperationId Operation (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasOperationRef Link (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasParameters Components (Definitions Param) 
Instance details

Defined in Data.OpenApi.Lens

HasPattern Schema (Maybe Pattern) 
Instance details

Defined in Data.OpenApi.Lens

HasSchema s Schema => HasPattern s (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

Methods

pattern :: Lens' s (Maybe Text) #

HasPrefix Xml (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

Methods

prefix :: Lens' Xml (Maybe Text) #

HasRequestBodies Components (Definitions RequestBody) 
Instance details

Defined in Data.OpenApi.Lens

HasRequired Schema [ParamName] 
Instance details

Defined in Data.OpenApi.Lens

HasResponses Components (Definitions Response) 
Instance details

Defined in Data.OpenApi.Lens

HasSchemas Components (Definitions Schema) 
Instance details

Defined in Data.OpenApi.Lens

HasSummary Example (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasSummary Operation (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasSummary PathItem (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasTags Operation (InsOrdHashSet TagName) 
Instance details

Defined in Data.OpenApi.Lens

HasTermsOfService Info (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasTitle Schema (Maybe Text) 
Instance details

Defined in Data.OpenApi.Lens

HasCallbacks Operation (InsOrdHashMap Text (Referenced Callback)) 
Instance details

Defined in Data.OpenApi.Lens

HasEncoding MediaTypeObject (InsOrdHashMap Text Encoding) 
Instance details

Defined in Data.OpenApi.Lens

HasExamples Header (InsOrdHashMap Text (Referenced Example)) 
Instance details

Defined in Data.OpenApi.Lens

HasExamples MediaTypeObject (InsOrdHashMap Text (Referenced Example)) 
Instance details

Defined in Data.OpenApi.Lens

HasExamples Param (InsOrdHashMap Text (Referenced Example)) 
Instance details

Defined in Data.OpenApi.Lens

HasHeaders Encoding (InsOrdHashMap Text (Referenced Header)) 
Instance details

Defined in Data.OpenApi.Lens

HasHeaders Response (InsOrdHashMap HeaderName (Referenced Header)) 
Instance details

Defined in Data.OpenApi.Lens

HasLinks Response (InsOrdHashMap Text (Referenced Link)) 
Instance details

Defined in Data.OpenApi.Lens

HasMapping Discriminator (InsOrdHashMap Text Text) 
Instance details

Defined in Data.OpenApi.Lens

HasParameters Link (InsOrdHashMap Text ExpressionOrValue) 
Instance details

Defined in Data.OpenApi.Lens

HasProperties Schema (InsOrdHashMap Text (Referenced Schema)) 
Instance details

Defined in Data.OpenApi.Lens

HasVariables Server (InsOrdHashMap Text ServerVariable) 
Instance details

Defined in Data.OpenApi.Lens

HasServer (ReaderT env (ExceptT Text IO)) 
Instance details

Defined in Mig.Core.Class.Server

Associated Types

type ServerResult (ReaderT env (ExceptT Text IO)) 
Instance details

Defined in Mig.Core.Class.Server

type ServerResult (ReaderT env (ExceptT Text IO)) = env -> Server IO
type ChunkElem Text 
Instance details

Defined in Data.Attoparsec.Internal.Types

type State Text 
Instance details

Defined in Data.Attoparsec.Internal.Types

type State Text = Buffer
type Item Text 
Instance details

Defined in Data.Text

type Item Text = Char
type Index Text 
Instance details

Defined in Control.Lens.At

type Index Text = Int
type IxValue Text 
Instance details

Defined in Control.Lens.At

type Index Text 
Instance details

Defined in Optics.At

type Index Text = Int
type IxKind Text 
Instance details

Defined in Optics.At

type IxValue Text 
Instance details

Defined in Optics.At

type ServerResult (ReaderT env (ExceptT Text IO)) 
Instance details

Defined in Mig.Core.Class.Server

type ServerResult (ReaderT env (ExceptT Text IO)) = env -> Server IO

type Html = Markup #

class ToMarkup a where #

Class allowing us to use a single function for Markup values

Minimal complete definition

toMarkup

Methods

toMarkup :: a -> Markup #

Convert a value to Markup.

preEscapedToMarkup :: a -> Markup #

Convert a value to Markup without escaping

Instances

Instances details
ToMarkup Int32 
Instance details

Defined in Text.Blaze

ToMarkup Int64 
Instance details

Defined in Text.Blaze

ToMarkup Word32 
Instance details

Defined in Text.Blaze

ToMarkup Word64 
Instance details

Defined in Text.Blaze

ToMarkup Markup 
Instance details

Defined in Text.Blaze

ToMarkup Link 
Instance details

Defined in Mig.Extra.Server.Html

ToMarkup Text 
Instance details

Defined in Text.Blaze

ToMarkup Builder 
Instance details

Defined in Text.Blaze

ToMarkup Text 
Instance details

Defined in Text.Blaze

ToMarkup String 
Instance details

Defined in Text.Blaze

ToMarkup Integer 
Instance details

Defined in Text.Blaze

ToMarkup Natural 
Instance details

Defined in Text.Blaze

ToMarkup Bool 
Instance details

Defined in Text.Blaze

ToMarkup Char 
Instance details

Defined in Text.Blaze

ToMarkup Double 
Instance details

Defined in Text.Blaze

ToMarkup Float 
Instance details

Defined in Text.Blaze

ToMarkup Int 
Instance details

Defined in Text.Blaze

ToMarkup Word 
Instance details

Defined in Text.Blaze

ToMarkup (NonEmpty Char) 
Instance details

Defined in Text.Blaze

ToMarkup [Markup] 
Instance details

Defined in Text.Blaze

type ResponseHeaders = [Header] #

A list of Headers.

Same type as RequestHeaders, but useful to differentiate in type signatures.

type RequestHeaders = [Header] #

A list of Headers.

Same type as ResponseHeaders, but useful to differentiate in type signatures.

data OpenApi #

This is the root document object for the API specification.

Instances

Instances details
FromJSON OpenApi 
Instance details

Defined in Data.OpenApi.Internal

ToJSON OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Data OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OpenApi -> c OpenApi #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OpenApi #

toConstr :: OpenApi -> Constr #

dataTypeOf :: OpenApi -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OpenApi) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OpenApi) #

gmapT :: (forall b. Data b => b -> b) -> OpenApi -> OpenApi #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OpenApi -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OpenApi -> r #

gmapQ :: (forall d. Data d => d -> u) -> OpenApi -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> OpenApi -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> OpenApi -> m OpenApi #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OpenApi -> m OpenApi #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OpenApi -> m OpenApi #

Monoid OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Semigroup OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Generic OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Methods

from :: OpenApi -> Rep OpenApi x #

to :: Rep OpenApi x -> OpenApi #

Show OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Generic OpenApi 
Instance details

Defined in Data.OpenApi.Internal

HasDatatypeInfo OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Eq OpenApi 
Instance details

Defined in Data.OpenApi.Internal

Methods

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

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

HasSwaggerAesonOptions OpenApi 
Instance details

Defined in Data.OpenApi.Internal

HasComponents OpenApi Components 
Instance details

Defined in Data.OpenApi.Lens

HasInfo OpenApi Info 
Instance details

Defined in Data.OpenApi.Lens

Methods

info :: Lens' OpenApi Info #

HasOpenapi OpenApi OpenApiSpecVersion 
Instance details

Defined in Data.OpenApi.Lens

HasExternalDocs OpenApi (Maybe ExternalDocs) 
Instance details

Defined in Data.OpenApi.Lens

HasSecurity OpenApi [SecurityRequirement] 
Instance details

Defined in Data.OpenApi.Lens

HasServers OpenApi [Server] 
Instance details

Defined in Data.OpenApi.Lens

HasTags OpenApi (InsOrdHashSet Tag) 
Instance details

Defined in Data.OpenApi.Lens

HasPaths OpenApi (InsOrdHashMap FilePath PathItem) 
Instance details

Defined in Data.OpenApi.Lens

type Rep OpenApi 
Instance details

Defined in Data.OpenApi.Internal

type Code OpenApi 
Instance details

Defined in Data.OpenApi.Internal

type DatatypeInfoOf OpenApi 
Instance details

Defined in Data.OpenApi.Internal

class ToParamSchema a where #

Convert a type into a plain Schema.

In previous versions of the package there was a separate type called ParamSchema, which was included in a greater Schema. Now this is a single class, but distinction for schema generators for "simple" types is preserved.

ToParamSchema is suited only for primitive-like types without nested fields and such.

An example type and instance:

{-# LANGUAGE OverloadedStrings #-}   -- allows to write Text literals

import Control.Lens

data Direction = Up | Down

instance ToParamSchema Direction where
  toParamSchema _ = mempty
     & type_ ?~ OpenApiString
     & enum_ ?~ [ "Up", "Down" ]

Instead of manually writing your ToParamSchema instance you can use a default generic implementation of toParamSchema.

To do that, simply add deriving Generic clause to your datatype and declare a ToParamSchema instance for your datatype without giving definition for toParamSchema.

For instance, the previous example can be simplified into this:

{-# LANGUAGE DeriveGeneric #-}

import GHC.Generics (Generic)

data Direction = Up | Down deriving Generic

instance ToParamSchema Direction

Minimal complete definition

Nothing

Methods

toParamSchema :: Proxy a -> Schema #

Convert a type into a plain parameter schema.

>>> BSL.putStrLn $ encodePretty $ toParamSchema (Proxy :: Proxy Integer)
{
    "type": "integer"
}

default toParamSchema :: (Generic a, GToParamSchema (Rep a)) => Proxy a -> Schema #

Instances

Instances details
ToParamSchema All 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Any 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Version 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Int16 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Int32 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Int64 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Int8 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Word16 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Word32 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Word64 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Word8 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

(ToParamSchemaByteStringError ByteString :: Constraint) => ToParamSchema ByteString 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

(ToParamSchemaByteStringError ByteString :: Constraint) => ToParamSchema ByteString 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema SetCookie 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Scientific 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Text 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Text 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Day

Format "date" corresponds to yyyy-mm-dd format.

Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema NominalDiffTime 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema UTCTime
>>> toParamSchema (Proxy :: Proxy UTCTime) ^. format
Just "yyyy-mm-ddThh:MM:ssZ"
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema LocalTime
>>> toParamSchema (Proxy :: Proxy LocalTime) ^. format
Just "yyyy-mm-ddThh:MM:ss"
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema TimeOfDay
>>> toParamSchema (Proxy :: Proxy TimeOfDay) ^. format
Just "hh:MM:ss"
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema ZonedTime
>>> toParamSchema (Proxy :: Proxy ZonedTime) ^. format
Just "date-time"
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema UUID 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema String 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Integer 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Natural 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema ()
>>> BSL.putStrLn $ encodePretty $ toParamSchema (Proxy :: Proxy ())
{
    "enum": [
        "_"
    ],
    "type": "string"
}
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy () -> Schema #

ToParamSchema Bool 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Char 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Double 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Float 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Int 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema Word 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema a => ToParamSchema (Identity a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema a => ToParamSchema (First a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (First a) -> Schema #

ToParamSchema a => ToParamSchema (Last a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Last a) -> Schema #

ToParamSchema a => ToParamSchema (Dual a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Dual a) -> Schema #

ToParamSchema a => ToParamSchema (Product a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema a => ToParamSchema (Sum a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Sum a) -> Schema #

ToParamSchema a => ToParamSchema (Set a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Set a) -> Schema #

ToParamSchema a => ToParamSchema (HashSet a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

ToParamSchema a => ToParamSchema (Vector a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Vector a) -> Schema #

ToParamSchema a => ToParamSchema (Vector a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Vector a) -> Schema #

ToParamSchema a => ToParamSchema (Vector a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Vector a) -> Schema #

ToParamSchema a => ToParamSchema (Vector a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Vector a) -> Schema #

ToParamSchema a => ToParamSchema [a] 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy [a] -> Schema #

HasResolution a => ToParamSchema (Fixed a) 
Instance details

Defined in Data.OpenApi.Internal.ParamSchema

Methods

toParamSchema :: Proxy (Fixed a) -> Schema #

class Typeable a => ToSchema a where #

Convert a type into Schema.

An example type and instance:

{-# LANGUAGE OverloadedStrings #-}   -- allows to write Text literals
{-# LANGUAGE OverloadedLists #-}     -- allows to write Map and HashMap as lists

import Control.Lens
import Data.Proxy
import Data.OpenApi

data Coord = Coord { x :: Double, y :: Double }

instance ToSchema Coord where
  declareNamedSchema _ = do
    doubleSchema <- declareSchemaRef (Proxy :: Proxy Double)
    return $ NamedSchema (Just "Coord") $ mempty
      & type_ ?~ OpenApiObject
      & properties .~
          [ ("x", doubleSchema)
          , ("y", doubleSchema)
          ]
      & required .~ [ "x", "y" ]

Instead of manually writing your ToSchema instance you can use a default generic implementation of declareNamedSchema.

To do that, simply add deriving Generic clause to your datatype and declare a ToSchema instance for your datatype without giving definition for declareNamedSchema.

For instance, the previous example can be simplified into this:

{-# LANGUAGE DeriveGeneric #-}

import GHC.Generics (Generic)

data Coord = Coord { x :: Double, y :: Double } deriving Generic

instance ToSchema Coord

Minimal complete definition

Nothing

Methods

declareNamedSchema :: Proxy a -> Declare (Definitions Schema) NamedSchema #

Convert a type into an optionally named schema together with all used definitions. Note that the schema itself is included in definitions only if it is recursive (and thus needs its definition in scope).

Instances

Instances details
ToSchema Object 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema All 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Any 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Version 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Int16 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Int32 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Int64 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Int8 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Word16 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Word32 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Word64 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Word8 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToSchemaByteStringError ByteString :: Constraint) => ToSchema ByteString 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToSchemaByteStringError ByteString :: Constraint) => ToSchema ByteString 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema IntSet 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Scientific 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Text 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Text 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Day

Format "date" corresponds to yyyy-mm-dd format.

Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema NominalDiffTime 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema UTCTime
>>> toSchema (Proxy :: Proxy UTCTime) ^. format
Just "yyyy-mm-ddThh:MM:ssZ"
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema LocalTime
>>> toSchema (Proxy :: Proxy LocalTime) ^. format
Just "yyyy-mm-ddThh:MM:ss"
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema TimeOfDay 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema ZonedTime

Format "date-time" corresponds to yyyy-mm-ddThh:MM:ss(Z|+hh:MM) format.

Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema UUID

For ToJSON instance, see uuid-aeson package.

Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema String 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Integer 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Natural 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema () 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Bool 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Char 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Double 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Float 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Int 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema Word 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Identity a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (First a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Last a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Dual a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Product a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Sum a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (NonEmpty a)

Since: openapi3-2.2.1

Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (IntMap a)

NOTE: This schema does not account for the uniqueness of keys.

Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Set a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (HashSet a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Vector a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Vector a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Vector a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Vector a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema (Maybe a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

ToSchema a => ToSchema [a] 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToSchema a, ToSchema b) => ToSchema (Either a b) 
Instance details

Defined in Data.OpenApi.Internal.Schema

(Typeable (Fixed a), HasResolution a) => ToSchema (Fixed a) 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToJSONKey k, ToSchema k, ToSchema v) => ToSchema (Map k v) 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToJSONKey k, ToSchema k, ToSchema v) => ToSchema (HashMap k v) 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToSchema a, ToSchema b) => ToSchema (a, b) 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToSchema a, ToSchema b, ToSchema c) => ToSchema (a, b, c) 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToSchema a, ToSchema b, ToSchema c, ToSchema d) => ToSchema (a, b, c, d) 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToSchema a, ToSchema b, ToSchema c, ToSchema d, ToSchema e) => ToSchema (a, b, c, d, e) 
Instance details

Defined in Data.OpenApi.Internal.Schema

(ToSchema a, ToSchema b, ToSchema c, ToSchema d, ToSchema e, ToSchema f) => ToSchema (a, b, c, d, e, f) 
Instance details

Defined in Data.OpenApi.Internal.Schema

Methods

declareNamedSchema :: Proxy (a, b, c, d, e, f) -> Declare (Definitions Schema) NamedSchema #

(ToSchema a, ToSchema b, ToSchema c, ToSchema d, ToSchema e, ToSchema f, ToSchema g) => ToSchema (a, b, c, d, e, f, g) 
Instance details

Defined in Data.OpenApi.Internal.Schema

Methods

declareNamedSchema :: Proxy (a, b, c, d, e, f, g) -> Declare (Definitions Schema) NamedSchema #

Swagger

withSwagger :: forall (m :: Type -> Type). MonadIO m => SwaggerConfig m -> Server m -> Server m #

Appends swagger UI to server

swagger :: MonadIO m => SwaggerConfig m -> m OpenApi -> Server m #

Swagger server. It serves static files and injects OpenApi schema

data DefaultInfo #

Default info that is often added to OpenApi schema

Constructors

DefaultInfo 

Fields

Instances

Instances details
Default DefaultInfo 
Instance details

Defined in Mig.Swagger

Methods

def :: DefaultInfo #

addDefaultInfo :: DefaultInfo -> OpenApi -> OpenApi #

Adds most common used info to OpenApi schema. Use this function in the mapSchema field of the SwaggerConfig.

writeOpenApi :: forall (m :: Type -> Type). FilePath -> Server m -> IO () #

Writes openapi schema to file

printOpenApi :: forall (m :: Type -> Type). Server m -> IO () #

Prints openapi schema file to stdout