Maintainer | Andrzej Rybczak <andrzej@rybczak.net> |
---|---|
Stability | experimental |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Lenses and prisms for the optics library.
>>>
import Data.Aeson
>>>
import Optics.Core
>>>
:set -XOverloadedLabels
Example from the Data.Swagger module using optics
:
>>>
:{
encode $ (mempty :: Swagger) & #definitions .~ [ ("User", mempty & #type ?~ SwaggerString) ] & #paths .~ [ ("/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\"}"
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 ParamSchema
#type
to
access
of SwaggerType
schema without having to use
Header
#paramSchema
:
>>>
encode $ (mempty :: Header) & #type ?~ SwaggerNumber
"{\"type\":\"number\"}"
Additionally, to simplify working with
, both Response
and
Operation
have direct access to it via Responses
. Example:at
>>>
:{
encode $ (mempty :: Operation) & at 404 ?~ "Not found" :} "{\"responses\":{\"404\":{\"description\":\"Not found\"}}}"
Orphan instances
At Operation Source # | |
At Responses Source # | |
Ixed Operation Source # | |
Ixed Responses Source # | |
(k ~ A_Prism, a ~ Referenced Schema, b ~ Referenced Schema) => LabelOptic "_ParamBody" k ParamAnySchema ParamAnySchema a b Source # | |
labelOptic :: Optic k NoIx ParamAnySchema ParamAnySchema a b | |
(k ~ A_Prism, a ~ ParamOtherSchema, b ~ ParamOtherSchema) => LabelOptic "_ParamOther" k ParamAnySchema ParamAnySchema a b Source # | |
labelOptic :: Optic k NoIx ParamAnySchema ParamAnySchema a b | |
(k ~ A_Prism, a ~ ApiKeyParams, b ~ ApiKeyParams) => LabelOptic "_SecuritySchemeApiKey" k SecuritySchemeType SecuritySchemeType a b Source # | |
labelOptic :: Optic k NoIx SecuritySchemeType SecuritySchemeType a b | |
(k ~ A_Prism, a ~ (), b ~ ()) => LabelOptic "_SecuritySchemeBasic" k SecuritySchemeType SecuritySchemeType a b Source # | |
labelOptic :: Optic k NoIx SecuritySchemeType SecuritySchemeType a b | |
(k ~ A_Prism, a ~ OAuth2Params, b ~ OAuth2Params) => LabelOptic "_SecuritySchemeOAuth2" k SecuritySchemeType SecuritySchemeType a b Source # | |
labelOptic :: Optic k NoIx SecuritySchemeType SecuritySchemeType a b | |
(k ~ A_Lens, a ~ Maybe AdditionalProperties, b ~ Maybe AdditionalProperties) => LabelOptic "additionalProperties" k Schema Schema a b Source # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
labelOptic :: Optic k NoIx Operation Operation a b | |
(k ~ A_Lens, a ~ MimeList, b ~ MimeList) => LabelOptic "consumes" k Swagger Swagger a b Source # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(k ~ A_Lens, a ~ Maybe Contact, b ~ Maybe Contact) => LabelOptic "contact" k Info Info a b Source # | |
labelOptic :: Optic k NoIx Info Info a b | |
(a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "default" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe (Referenced Response), b ~ Maybe (Referenced Response)) => LabelOptic "default" k Responses Responses a b Source # | |
labelOptic :: Optic k NoIx Responses Responses a b | |
(k ~ A_Lens, a ~ Definitions Schema, b ~ Definitions Schema) => LabelOptic "definitions" k Swagger Swagger a b Source # | |
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 # | |
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 # | |
labelOptic :: Optic k NoIx Operation Operation a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k ExternalDocs ExternalDocs a b Source # | |
labelOptic :: Optic k NoIx ExternalDocs ExternalDocs a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Header Header a b Source # | |
labelOptic :: Optic k NoIx Header Header a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Info Info a b Source # | |
labelOptic :: Optic k NoIx Info Info a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Operation Operation a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Param Param a b | |
(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "description" k Response Response a b Source # | |
labelOptic :: Optic k NoIx Response Response a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Schema Schema a b Source # | |
labelOptic :: Optic k NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k SecurityScheme SecurityScheme a b Source # | |
labelOptic :: Optic k NoIx SecurityScheme SecurityScheme a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Tag Tag a b Source # | |
labelOptic :: Optic k NoIx Tag Tag a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "discriminator" k Schema Schema a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Contact Contact a b | |
(a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe [Value], b ~ Maybe [Value]) => LabelOptic "enum" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe Value, b ~ Maybe Value) => LabelOptic "example" k Schema Schema a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Response Response a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMaximum" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "exclusiveMinimum" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe ExternalDocs, b ~ Maybe ExternalDocs) => LabelOptic "externalDocs" k Operation Operation a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe ExternalDocs, b ~ Maybe ExternalDocs) => LabelOptic "externalDocs" k Swagger Swagger a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Tag Tag a b | |
(a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Format, b ~ Maybe Format) => LabelOptic "format" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "get" k PathItem PathItem a b Source # | |
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 # | |
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 # | |
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 # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(k ~ A_Lens, a ~ ParamLocation, b ~ ParamLocation) => LabelOptic "in" k ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic k NoIx ParamOtherSchema ParamOtherSchema a b | |
(k ~ A_Lens, a ~ Info, b ~ Info) => LabelOptic "info" k Swagger Swagger a b Source # | |
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 # | |
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 # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe (SwaggerItems ('SwaggerKindParamOtherSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerItems ('SwaggerKindParamOtherSchema :: SwaggerKind Type))) => LabelOptic "items" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type))) => LabelOptic "items" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe License, b ~ Maybe License) => LabelOptic "license" k Info Info a b Source # | |
labelOptic :: Optic k NoIx Info Info a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxItems" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxLength" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "maxProperties" k Schema Schema a b Source # | |
labelOptic :: Optic k NoIx Schema Schema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "maximum" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minItems" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minLength" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "minProperties" k Schema Schema a b Source # | |
labelOptic :: Optic k NoIx Schema Schema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "minimum" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Scientific, b ~ Maybe Scientific) => LabelOptic "multipleOf" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "name" k Contact Contact a b Source # | |
labelOptic :: Optic k NoIx Contact Contact a b | |
(k ~ A_Lens, a ~ HostName, b ~ HostName) => LabelOptic "name" k Host Host a b Source # | |
labelOptic :: Optic k NoIx Host Host a b | |
(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "name" k License License a b Source # | |
labelOptic :: Optic k NoIx License License a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "name" k NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic k NoIx NamedSchema NamedSchema a b | |
(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "name" k Param Param a b Source # | |
labelOptic :: Optic k NoIx Param Param a b | |
(k ~ A_Lens, a ~ TagName, b ~ TagName) => LabelOptic "name" k Tag Tag a b Source # | |
labelOptic :: Optic k NoIx Tag Tag a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "name" k Xml Xml a b Source # | |
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 # | |
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 # | |
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 # | |
labelOptic :: Optic k NoIx PathItem PathItem a b | |
(a ~ ParamSchema ('SwaggerKindSchema :: SwaggerKind Type), b ~ ParamSchema ('SwaggerKindSchema :: SwaggerKind Type)) => LabelOptic "paramSchema" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(k ~ A_Lens, a ~ ParamSchema ('SwaggerKindNormal Header), b ~ ParamSchema ('SwaggerKindNormal Header)) => LabelOptic "paramSchema" k Header Header a b Source # | |
labelOptic :: Optic k NoIx Header Header a b | |
(k ~ A_Lens, a ~ ParamSchema ('SwaggerKindParamOtherSchema :: SwaggerKind Type), b ~ ParamSchema ('SwaggerKindParamOtherSchema :: SwaggerKind Type)) => LabelOptic "paramSchema" k ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic k NoIx ParamOtherSchema ParamOtherSchema a b | |
(k ~ A_Lens, a ~ ParamSchema ('SwaggerKindSchema :: SwaggerKind Type), b ~ ParamSchema ('SwaggerKindSchema :: SwaggerKind Type)) => LabelOptic "paramSchema" k Schema Schema a b Source # | |
labelOptic :: Optic k NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ [Referenced Param], b ~ [Referenced Param]) => LabelOptic "parameters" k Operation Operation a b Source # | |
labelOptic :: Optic k NoIx Operation Operation a b | |
(k ~ A_Lens, a ~ [Referenced Param], b ~ [Referenced Param]) => LabelOptic "parameters" k PathItem PathItem a b Source # | |
labelOptic :: Optic k NoIx PathItem PathItem a b | |
(k ~ A_Lens, a ~ Definitions Param, b ~ Definitions Param) => LabelOptic "parameters" k Swagger Swagger a b Source # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(k ~ A_Lens, a ~ Maybe Operation, b ~ Maybe Operation) => LabelOptic "patch" k PathItem PathItem a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "pattern" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "pattern" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "pattern" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "pattern" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe PortNumber, b ~ Maybe PortNumber) => LabelOptic "port" k Host Host a b Source # | |
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 # | |
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 # | |
labelOptic :: Optic k NoIx Xml Xml a b | |
(k ~ A_Lens, a ~ Maybe MimeList, b ~ Maybe MimeList) => LabelOptic "produces" k Operation Operation a b Source # | |
labelOptic :: Optic k NoIx Operation Operation a b | |
(k ~ A_Lens, a ~ MimeList, b ~ MimeList) => LabelOptic "produces" k Swagger Swagger a b Source # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(k ~ A_Lens, a ~ InsOrdHashMap Text (Referenced Schema), b ~ InsOrdHashMap Text (Referenced Schema)) => LabelOptic "properties" k Schema Schema a b Source # | |
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 # | |
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 # | |
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 # | |
labelOptic :: Optic k NoIx Param Param a b | |
(k ~ A_Lens, a ~ [ParamName], b ~ [ParamName]) => LabelOptic "required" k Schema Schema a b Source # | |
labelOptic :: Optic k NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Responses, b ~ Responses) => LabelOptic "responses" k Operation Operation a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Responses Responses a b | |
(k ~ A_Lens, a ~ Definitions Response, b ~ Definitions Response) => LabelOptic "responses" k Swagger Swagger a b Source # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(k ~ A_Lens, a ~ Schema, b ~ Schema) => LabelOptic "schema" k NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic k NoIx NamedSchema NamedSchema a b | |
(k ~ A_Lens, a ~ ParamAnySchema, b ~ ParamAnySchema) => LabelOptic "schema" k Param Param a b Source # | |
labelOptic :: Optic k NoIx Param Param a b | |
(k ~ A_Lens, a ~ Maybe (Referenced Schema), b ~ Maybe (Referenced Schema)) => LabelOptic "schema" k Response Response a b Source # | |
labelOptic :: Optic k NoIx Response Response a b | |
(k ~ A_Lens, a ~ Maybe [Scheme], b ~ Maybe [Scheme]) => LabelOptic "schemes" k Operation Operation a b Source # | |
labelOptic :: Optic k NoIx Operation Operation a b | |
(k ~ A_Lens, a ~ Maybe [Scheme], b ~ Maybe [Scheme]) => LabelOptic "schemes" k Swagger Swagger a b Source # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(k ~ A_Lens, a ~ [SecurityRequirement], b ~ [SecurityRequirement]) => LabelOptic "security" k Operation Operation a b Source # | |
labelOptic :: Optic k NoIx Operation Operation a b | |
(k ~ A_Lens, a ~ [SecurityRequirement], b ~ [SecurityRequirement]) => LabelOptic "security" k Swagger Swagger a b Source # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(k ~ A_Lens, a ~ SecurityDefinitions, b ~ SecurityDefinitions) => LabelOptic "securityDefinitions" k Swagger Swagger a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Operation Operation a b | |
(k ~ A_Lens, a ~ InsOrdHashSet TagName, b ~ InsOrdHashSet TagName) => LabelOptic "tags" k Operation Operation a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Swagger Swagger a b | |
(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "termsOfService" k Info Info a b Source # | |
labelOptic :: Optic k NoIx Info Info a b | |
(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "title" k Info Info a b Source # | |
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 # | |
labelOptic :: Optic k NoIx Schema Schema a b | |
(a ~ Maybe (SwaggerType ('SwaggerKindNormal Header)), b ~ Maybe (SwaggerType ('SwaggerKindNormal Header))) => LabelOptic "type" A_Lens Header Header a b Source # | |
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 # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe (SwaggerType ('SwaggerKindParamOtherSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerType ('SwaggerKindParamOtherSchema :: SwaggerKind Type))) => LabelOptic "type" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe (SwaggerType ('SwaggerKindSchema :: SwaggerKind Type)), b ~ Maybe (SwaggerType ('SwaggerKindSchema :: SwaggerKind Type))) => LabelOptic "type" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ SecuritySchemeType, b ~ SecuritySchemeType) => LabelOptic "type" k SecurityScheme SecurityScheme a b Source # | |
labelOptic :: Optic k NoIx SecurityScheme SecurityScheme a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" A_Lens Header Header a b Source # | |
labelOptic :: Optic A_Lens NoIx Header Header a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" A_Lens NamedSchema NamedSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx NamedSchema NamedSchema a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" A_Lens ParamOtherSchema ParamOtherSchema a b Source # | |
labelOptic :: Optic A_Lens NoIx ParamOtherSchema ParamOtherSchema a b | |
(a ~ Maybe Bool, b ~ Maybe Bool) => LabelOptic "uniqueItems" A_Lens Schema Schema a b Source # | |
labelOptic :: Optic A_Lens NoIx Schema Schema a b | |
(k ~ A_Lens, a ~ Maybe URL, b ~ Maybe URL) => LabelOptic "url" k Contact Contact a b Source # | |
labelOptic :: Optic k NoIx Contact Contact a b | |
(k ~ A_Lens, a ~ URL, b ~ URL) => LabelOptic "url" k ExternalDocs ExternalDocs a b Source # | |
labelOptic :: Optic k NoIx ExternalDocs ExternalDocs a b | |
(k ~ A_Lens, a ~ Maybe URL, b ~ Maybe URL) => LabelOptic "url" k License License a b Source # | |
labelOptic :: Optic k NoIx License License a b | |
(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "version" k Info Info a b Source # | |
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 # | |
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 # | |
labelOptic :: Optic k NoIx Schema Schema a b | |
(k ~ A_Prism, a ~ a, b ~ a) => LabelOptic "_Inline" k (Referenced a) (Referenced a) a b Source # | |
labelOptic :: Optic k NoIx (Referenced a) (Referenced a0) a1 b | |
(k ~ A_Prism, a ~ Reference, b ~ Reference) => LabelOptic "_Ref" k (Referenced a) (Referenced a) a b Source # | |
labelOptic :: Optic k NoIx (Referenced a) (Referenced a) a0 b | |
(a ~ [Referenced Schema], b ~ [Referenced Schema]) => LabelOptic "_SwaggerItemsArray" A_Review (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)) (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)) a b Source # | |
labelOptic :: Optic A_Review NoIx (SwaggerItems 'SwaggerKindSchema) (SwaggerItems 'SwaggerKindSchema) a b | |
(a ~ Referenced Schema, b ~ Referenced Schema) => LabelOptic "_SwaggerItemsObject" A_Review (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)) (SwaggerItems ('SwaggerKindSchema :: SwaggerKind Type)) a b Source # | |
labelOptic :: Optic A_Review NoIx (SwaggerItems 'SwaggerKindSchema) (SwaggerItems 'SwaggerKindSchema) a b | |
(a ~ (Maybe (CollectionFormat t), ParamSchema t), b ~ (Maybe (CollectionFormat t), ParamSchema t)) => LabelOptic "_SwaggerItemsPrimitive" A_Review (SwaggerItems t) (SwaggerItems t) a b Source # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
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 # | |
labelOptic :: Optic k NoIx (ParamSchema t) (ParamSchema t) a b |