swagger2-2.8.7: Swagger 2.0 data model
MaintainerAndrzej Rybczak <andrzej@rybczak.net>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Data.Swagger.Optics

Description

Lenses and prisms for the optics library.

>>> import Data.Aeson
>>> import qualified Data.HashMap.Strict.InsOrd as IOHM
>>> import Optics.Core
>>> :set -XOverloadedLabels

Example from the Data.Swagger module using optics:

>>> :{
encode $ (mempty :: Swagger)
  & #definitions .~ IOHM.fromList [ ("User", mempty & #type ?~ SwaggerString) ]
  & #paths .~ IOHM.fromList
    [ ("/user", mempty & #get ?~ (mempty
        & #produces ?~ MimeList ["application/json"]
        & at 200 ?~ ("OK" & #_Inline % #schema ?~ Ref (Reference "User"))
        & at 404 ?~ "User info not found")) ]
:}
"{\"swagger\":\"2.0\",\"info\":{\"title\":\"\",\"version\":\"\"},\"paths\":{\"/user\":{\"get\":{\"produces\":[\"application/json\"],\"responses\":{\"200\":{\"description\":\"OK\",\"schema\":{\"$ref\":\"#/definitions/User\"}},\"404\":{\"description\":\"User info not found\"}}}}},\"definitions\":{\"User\":{\"type\":\"string\"}}}"

For convenience optics are defined as labels. It means that field accessor names can be overloaded for different types. One such common field is #description. Many components of a Swagger specification can have descriptions, and you can use the same name for them:

>>> encode $ (mempty :: Response) & #description .~ "No content"
"{\"description\":\"No content\"}"
>>> :{
encode $ (mempty :: Schema)
  & #type        ?~ SwaggerBoolean
  & #description ?~ "To be or not to be"
:}
"{\"description\":\"To be or not to be\",\"type\":\"boolean\"}"

ParamSchema is basically the base schema specification and many types contain it. So for convenience, all ParamSchema fields are transitively made fields of the type that has it. For example, you can use #type to access SwaggerType of Header schema without having to use #paramSchema:

>>> encode $ (mempty :: Header) & #type ?~ SwaggerNumber
"{\"type\":\"number\"}"

Additionally, to simplify working with Response, both Operation and Responses have direct access to it via at. Example:

>>> :{
encode $ (mempty :: Operation)
  & at 404 ?~ "Not found"
:}
"{\"responses\":{\"404\":{\"description\":\"Not found\"}}}"

Orphan instances

At Responses Source # 
Instance details

Methods

at :: Index Responses -> Lens' Responses (Maybe (IxValue Responses))

At Operation Source # 
Instance details

Methods

at :: Index Operation -> Lens' Operation (Maybe (IxValue Operation))

Ixed Responses Source # 
Instance details

Associated Types

type IxKind Responses

Methods

ix :: Index Responses -> Optic' (IxKind Responses) NoIx Responses (IxValue Responses)

Ixed Operation Source # 
Instance details

Associated Types

type IxKind Operation

Methods

ix :: Index Operation -> Optic' (IxKind Operation) NoIx Operation (IxValue Operation)

(k ~ A_Prism, a ~ Referenced Schema, b ~ Referenced Schema) => LabelOptic "_ParamBody" k ParamAnySchema ParamAnySchema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx ParamAnySchema ParamAnySchema a b

(k ~ A_Prism, a ~ ParamOtherSchema, b ~ ParamOtherSchema) => LabelOptic "_ParamOther" k ParamAnySchema ParamAnySchema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx ParamAnySchema ParamAnySchema a b

(k ~ A_Prism, a ~ ApiKeyParams, b ~ ApiKeyParams) => LabelOptic "_SecuritySchemeApiKey" k SecuritySchemeType SecuritySchemeType a b Source # 
Instance details

(k ~ A_Prism, a ~ (), b ~ ()) => LabelOptic "_SecuritySchemeBasic" k SecuritySchemeType SecuritySchemeType a b Source # 
Instance details

(k ~ A_Prism, a ~ OAuth2Params, b ~ OAuth2Params) => LabelOptic "_SecuritySchemeOAuth2" k SecuritySchemeType SecuritySchemeType a b Source # 
Instance details

(k ~ A_Lens, a ~ Maybe AdditionalProperties, b ~ Maybe AdditionalProperties) => LabelOptic "additionalProperties" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ Maybe [Referenced Schema], b ~ Maybe [Referenced Schema]) => LabelOptic "allOf" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "allowEmptyValue" k ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "attribute" k Xml Xml a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Xml Xml a b

(k ~ A_Lens, a ~ Maybe FilePath, b ~ Maybe FilePath) => LabelOptic "basePath" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ MimeList, b ~ MimeList) => LabelOptic "consumes" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ Maybe MimeList, b ~ Maybe MimeList) => LabelOptic "consumes" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ Maybe Contact, b ~ Maybe Contact) => LabelOptic "contact" k Info Info a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Info Info a b

(k ~ A_Lens, a ~ Maybe (Referenced Response), b ~ Maybe (Referenced Response)) => LabelOptic "default" k Responses Responses a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Responses Responses a b

(a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Definitions Schema, b ~ Definitions Schema) => LabelOptic "definitions" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "delete" k PathItem PathItem a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx PathItem PathItem a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "deprecated" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Info Info a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Info Info a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Tag Tag a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Tag Tag a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Param Param a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Param Param a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Header Header a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "description" k Response Response a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Response Response a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k SecurityScheme SecurityScheme a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx SecurityScheme SecurityScheme a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k ExternalDocs ExternalDocs a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx ExternalDocs ExternalDocs a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "discriminator" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "email" k Contact Contact a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Contact Contact a b

(a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "example" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ Maybe Example, b ~ Maybe Example) => LabelOptic "examples" k Response Response a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Response Response a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ InsOrdHashMap Text Value, b ~ InsOrdHashMap Text Value) => LabelOptic "extensions" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ Maybe ExternalDocs, b ~ Maybe ExternalDocs) => LabelOptic "externalDocs" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ Maybe ExternalDocs, b ~ Maybe ExternalDocs) => LabelOptic "externalDocs" k Tag Tag a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Tag Tag a b

(k ~ A_Lens, a ~ Maybe ExternalDocs, b ~ Maybe ExternalDocs) => LabelOptic "externalDocs" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ Maybe ExternalDocs, b ~ Maybe ExternalDocs) => LabelOptic "externalDocs" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "get" k PathItem PathItem a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx PathItem PathItem a b

(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "head" k PathItem PathItem a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx PathItem PathItem a b

(k ~ A_Lens, a ~ InsOrdHashMap HeaderName Header, b ~ InsOrdHashMap HeaderName Header) => LabelOptic "headers" k Response Response a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Response Response a b

(k ~ A_Lens, a ~ Maybe Host, b ~ Maybe Host) => LabelOptic "host" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ ParamLocation, b ~ ParamLocation) => LabelOptic "in" k ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Info, b ~ Info) => LabelOptic "info" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(a ~ Maybe (SwaggerItems ('SwaggerKindNormal Header)), b ~ Maybe (SwaggerItems ('SwaggerKindNormal Header))) => LabelOptic "items" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type))) => LabelOptic "items" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type))) => LabelOptic "items" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe (SwaggerItems ('SwaggerKindParamOtherSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerItems ('SwaggerKindParamOtherSchema :: SwaggerKind Type))) => LabelOptic "items" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Maybe License, b ~ Maybe License) => LabelOptic "license" k Info Info a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Info Info a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxProperties" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minProperties" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ HostName, b ~ HostName) => LabelOptic "name" k Host Host a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Host Host a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "name" k Contact Contact a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Contact Contact a b

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "name" k License License a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx License License a b

(k ~ A_Lens, a ~ TagName, b ~ TagName) => LabelOptic "name" k Tag Tag a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Tag Tag a b

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "name" k Param Param a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Param Param a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "name" k NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx NamedSchema NamedSchema a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "name" k Xml Xml a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Xml Xml a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "namespace" k Xml Xml a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Xml Xml a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "operationId" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "options" k PathItem PathItem a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx PathItem PathItem a b

(k ~ A_Lens, a ~ ParamSchema ('SwaggerKindParamOtherSchema :: SwaggerKind Type), b ~ ParamSchema ('SwaggerKindParamOtherSchema :: SwaggerKind Type)) => LabelOptic "paramSchema" k ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ ParamSchema ('SwaggerKindNormal Header), b ~ ParamSchema ('SwaggerKindNormal Header)) => LabelOptic "paramSchema" k Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Header Header a b

(k ~ A_Lens, a ~ ParamSchema ('SwaggerKindSchema :: SwaggerKind Type), b ~ ParamSchema ('SwaggerKindSchema :: SwaggerKind Type)) => LabelOptic "paramSchema" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(a ~ ParamSchema ('SwaggerKindSchema :: SwaggerKind Type), b ~ ParamSchema ('SwaggerKindSchema :: SwaggerKind Type)) => LabelOptic "paramSchema" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(k ~ A_Lens, a ~ Definitions Param, b ~ Definitions Param) => LabelOptic "parameters" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ [Referenced Param], b ~ [Referenced Param]) => LabelOptic "parameters" k PathItem PathItem a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx PathItem PathItem a b

(k ~ A_Lens, a ~ [Referenced Param], b ~ [Referenced Param]) => LabelOptic "parameters" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "patch" k PathItem PathItem a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx PathItem PathItem a b

(k ~ A_Lens, a ~ InsOrdHashMap FilePath PathItem, b ~ InsOrdHashMap FilePath PathItem) => LabelOptic "paths" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "pattern" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "pattern" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "pattern" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "pattern" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Maybe PortNumber, b ~ Maybe PortNumber) => LabelOptic "port" k Host Host a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Host Host a b

(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "post" k PathItem PathItem a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx PathItem PathItem a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "prefix" k Xml Xml a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Xml Xml a b

(k ~ A_Lens, a ~ MimeList, b ~ MimeList) => LabelOptic "produces" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ Maybe MimeList, b ~ Maybe MimeList) => LabelOptic "produces" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ InsOrdHashMap Text (Referenced Schema), b ~ InsOrdHashMap Text (Referenced Schema)) => LabelOptic "properties" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "put" k PathItem PathItem a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx PathItem PathItem a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "readOnly" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "required" k Param Param a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Param Param a b

(k ~ A_Lens, a ~ [ParamName], b ~ [ParamName]) => LabelOptic "required" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ Definitions Response, b ~ Definitions Response) => LabelOptic "responses" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ Responses, b ~ Responses) => LabelOptic "responses" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ InsOrdHashMap HttpStatusCode (Referenced Response), b ~ InsOrdHashMap HttpStatusCode (Referenced Response)) => LabelOptic "responses" k Responses Responses a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Responses Responses a b

(k ~ A_Lens, a ~ ParamAnySchema, b ~ ParamAnySchema) => LabelOptic "schema" k Param Param a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Param Param a b

(k ~ A_Lens, a ~ Schema, b ~ Schema) => LabelOptic "schema" k NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx NamedSchema NamedSchema a b

(k ~ A_Lens, a ~ Maybe (Referenced Schema), b ~ Maybe (Referenced Schema)) => LabelOptic "schema" k Response Response a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Response Response a b

(k ~ A_Lens, a ~ Maybe [Scheme], b ~ Maybe [Scheme]) => LabelOptic "schemes" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ Maybe [Scheme], b ~ Maybe [Scheme]) => LabelOptic "schemes" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ [SecurityRequirement], b ~ [SecurityRequirement]) => LabelOptic "security" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ [SecurityRequirement], b ~ [SecurityRequirement]) => LabelOptic "security" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ SecurityDefinitions, b ~ SecurityDefinitions) => LabelOptic "securityDefinitions" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "summary" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ InsOrdHashSet Tag, b ~ InsOrdHashSet Tag) => LabelOptic "tags" k Swagger Swagger a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Swagger Swagger a b

(k ~ A_Lens, a ~ InsOrdHashSet TagName, b ~ InsOrdHashSet TagName) => LabelOptic "tags" k Operation Operation a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Operation Operation a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "termsOfService" k Info Info a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Info Info a b

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "title" k Info Info a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Info Info a b

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "title" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Lens, a ~ SecuritySchemeType, b ~ SecuritySchemeType) => LabelOptic "type" k SecurityScheme SecurityScheme a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx SecurityScheme SecurityScheme a b

(a ~ Maybe (SwaggerType ('SwaggerKindNormal Header)), b ~ Maybe (SwaggerType ('SwaggerKindNormal Header))) => LabelOptic "type" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe (SwaggerType ('SwaggerKindSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerType ('SwaggerKindSchema :: SwaggerKind Type))) => LabelOptic "type" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe (SwaggerType ('SwaggerKindSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerType ('SwaggerKindSchema :: SwaggerKind Type))) => LabelOptic "type" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe (SwaggerType ('SwaggerKindParamOtherSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerType ('SwaggerKindParamOtherSchema :: SwaggerKind Type))) => LabelOptic "type" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" A_Lens Header Header a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Header Header a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" A_Lens NamedSchema NamedSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" A_Lens Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx Schema Schema a b

(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" A_Lens ParamOtherSchema ParamOtherSchema a b Source # 
Instance details

Methods

labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b

(k ~ A_Lens, a ~ Maybe URL, b ~ Maybe URL) => LabelOptic "url" k Contact Contact a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Contact Contact a b

(k ~ A_Lens, a ~ Maybe URL, b ~ Maybe URL) => LabelOptic "url" k License License a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx License License a b

(k ~ A_Lens, a ~ URL, b ~ URL) => LabelOptic "url" k ExternalDocs ExternalDocs a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx ExternalDocs ExternalDocs a b

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "version" k Info Info a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Info Info a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "wrapped" k Xml Xml a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Xml Xml a b

(k ~ A_Lens, a ~ Maybe Xml, b ~ Maybe Xml) => LabelOptic "xml" k Schema Schema a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx Schema Schema a b

(k ~ A_Prism, a1 ~ a2, b ~ a3) => LabelOptic "_Inline" k (Referenced a2) (Referenced a3) a1 b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (Referenced a2) (Referenced a3) a1 b

(k ~ A_Prism, a1 ~ Reference, b ~ Reference) => LabelOptic "_Ref" k (Referenced a2) (Referenced a2) a1 b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (Referenced a2) (Referenced a2) a1 b

(a ~ [Referenced Schema], b ~ [Referenced Schema]) => LabelOptic "_SwaggerItemsArray" A_Review (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)) (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)) a b Source # 
Instance details

(a ~ Referenced Schema, b ~ Referenced Schema) => LabelOptic "_SwaggerItemsObject" A_Review (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)) (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)) a b Source # 
Instance details

(a ~ (Maybe (CollectionFormat t), ParamSchema t), b ~ (Maybe (CollectionFormat t), ParamSchema t)) => LabelOptic "_SwaggerItemsPrimitive" A_Review (SwaggerItems t) (SwaggerItems t) a b Source # 
Instance details

Methods

labelOptic :: Optic A_Review NoIx (SwaggerItems t) (SwaggerItems t) a b

(k ~ A_Lens, a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe (SwaggerItems t), b ~ Maybe (SwaggerItems t)) => LabelOptic "items" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Pattern, b ~ Maybe Pattern) => LabelOptic "pattern" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe (SwaggerType t), b ~ Maybe (SwaggerType t)) => LabelOptic "type" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b

(k ~ A_Lens, a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" k (ParamSchema t) (ParamSchema t) a b Source # 
Instance details

Methods

labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b