swagger2-2.2.2: Swagger 2.0 data model

Safe HaskellNone
LanguageHaskell2010

Data.Swagger.Internal.AesonUtils

Contents

Synopsis

Generic functions

class AesonDefaultValue a where #

Methods

defaultValue :: Maybe a #

Instances
AesonDefaultValue Text # 
Instance details

Defined in Data.Swagger.Internal.AesonUtils

AesonDefaultValue SecuritySchemeType # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue OAuth2Flow # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue Responses # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue ParamLocation # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue ParamAnySchema # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue MimeList # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue Info # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue [a] # 
Instance details

Defined in Data.Swagger.Internal.AesonUtils

Methods

defaultValue :: Maybe [a] #

AesonDefaultValue (Maybe a) # 
Instance details

Defined in Data.Swagger.Internal.AesonUtils

Methods

defaultValue :: Maybe (Maybe a) #

AesonDefaultValue (Set a) # 
Instance details

Defined in Data.Swagger.Internal.AesonUtils

Methods

defaultValue :: Maybe (Set a) #

AesonDefaultValue (ParamSchema s) # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue (SwaggerType a) # 
Instance details

Defined in Data.Swagger.Internal

AesonDefaultValue (InsOrdHashMap k v) # 
Instance details

Defined in Data.Swagger.Internal.AesonUtils

sopSwaggerGenericToJSON :: forall a xs. (HasDatatypeInfo a, HasSwaggerAesonOptions a, All2 ToJSON (Code a), All2 Eq (Code a), Code a ~ '[xs]) => a -> Value #

Generic serialisation for swagger records.

Features

  • omits nulls, empty objects and empty arrays (configurable)
  • possible to add fields
  • possible to merge sub-object

sopSwaggerGenericToJSONWithOpts :: forall a xs. (Generic a, All2 AesonDefaultValue (Code a), HasDatatypeInfo a, All2 ToJSON (Code a), All2 Eq (Code a), Code a ~ '[xs]) => SwaggerAesonOptions -> a -> Value #

  • TODO:* This is only used by ToJSON (ParamSchema SwaggerKindSchema)

Also uses default aesonDefaults

Options

class (Generic a, All2 AesonDefaultValue (Code a)) => HasSwaggerAesonOptions a where #

Minimal complete definition

swaggerAesonOptions

Methods

swaggerAesonOptions :: proxy a -> SwaggerAesonOptions #

aesonDefaults :: proxy a -> POP Maybe (Code a) #

Instances
HasSwaggerAesonOptions SecurityScheme # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions OAuth2Params # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions Header # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions Response # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions Responses # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions Schema # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions ParamOtherSchema # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions Param # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions Operation # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions PathItem # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions Swagger # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions (ParamSchema (SwaggerKindNormal t)) # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions (ParamSchema (SwaggerKindParamOtherSchema :: SwaggerKind *)) # 
Instance details

Defined in Data.Swagger.Internal

HasSwaggerAesonOptions (ParamSchema (SwaggerKindSchema :: SwaggerKind *)) # 
Instance details

Defined in Data.Swagger.Internal