@@ -1,4 +1,5 @@
1{-# LANGUAGE CPP #-}
1{-# LANGUAGE CPP #-}
2+{-# LANGUAGE DataKinds #-}
2{-# LANGUAGE DeriveDataTypeable #-}
3{-# LANGUAGE DeriveDataTypeable #-}
3{-# LANGUAGE DeriveFunctor #-}
4{-# LANGUAGE DeriveFunctor #-}
4{-# LANGUAGE DeriveGeneric #-}
5{-# LANGUAGE DeriveGeneric #-}
@@ -8,15 +9,15 @@
8{-# LANGUAGE GADTs #-}
9{-# LANGUAGE GADTs #-}
9{-# LANGUAGE GeneralizedNewtypeDeriving #-}
10{-# LANGUAGE GeneralizedNewtypeDeriving #-}
10{-# LANGUAGE OverloadedStrings #-}
11{-# LANGUAGE OverloadedStrings #-}
11−{-# LANGUAGE PolyKinds #-}
12{-# LANGUAGE RecordWildCards #-}
12{-# LANGUAGE RecordWildCards #-}
13{-# LANGUAGE ScopedTypeVariables #-}
13{-# LANGUAGE ScopedTypeVariables #-}
14{-# LANGUAGE StandaloneDeriving #-}
14{-# LANGUAGE StandaloneDeriving #-}
15−{-# LANGUAGE UndecidableInstances #-}
17−{-# LANGUAGE DataKinds #-}
18−{-# LANGUAGE TypeFamilies #-}
19{-# LANGUAGE TemplateHaskell #-}
15{-# LANGUAGE TemplateHaskell #-}
16+{-# LANGUAGE TypeFamilies #-}
17+{-# LANGUAGE UndecidableInstances #-}
18+#if __GLASGOW_HASKELL__ <710
19+{-# LANGUAGE PolyKinds #-}
20#include "overlapping-compat.h"
21#include "overlapping-compat.h"
21module Data.Swagger.Internal where
22module Data.Swagger.Internal where
@@ -25,11 +26,9 @@ import Prelude.Compat
26import Control.Lens ((&), (.~), (?~))
27import Control.Lens ((&), (.~), (?~))
27import Control.Applicative
28import Control.Applicative
29import Data.Aeson
29import Data.Aeson
30import qualified Data.Aeson.Types as JSON
30import qualified Data.Aeson.Types as JSON
31import Data.Data (Data(..), Typeable, mkConstr, mkDataType, Fixity(..), Constr, DataType, constrIndex)
31import Data.Data (Data(..), Typeable, mkConstr, mkDataType, Fixity(..), Constr, DataType, constrIndex)
32−import Data.HashMap.Strict (HashMap)
33import qualified Data.HashMap.Strict as HashMap
32import qualified Data.HashMap.Strict as HashMap
34import Data.Map (Map)
33import Data.Map (Map)
35import qualified Data.Map as Map
34import qualified Data.Map as Map
@@ -355,7 +354,7 @@ data ParamOtherSchema = ParamOtherSchema
355 -- Default value is @False@.
354 -- Default value is @False@.
356 , _paramOtherSchemaAllowEmptyValue :: Maybe Bool
355 , _paramOtherSchemaAllowEmptyValue :: Maybe Bool
358− , _paramOtherSchemaParamSchema :: ParamSchema SwaggerKindParamOtherSchema
357+ , _paramOtherSchemaParamSchema :: ParamSchema 'SwaggerKindParamOtherSchema
359 } deriving (Eq, Show, Generic, Typeable, Data)
358 } deriving (Eq, Show, Generic, Typeable, Data)
361-- | Items for @'SwaggerArray'@ schemas.
360-- | Items for @'SwaggerArray'@ schemas.
@@ -370,8 +369,8 @@ data ParamOtherSchema = ParamOtherSchema
370-- @'SwaggerItemsArray'@ should be used to specify tuple @'Schema'@s.
369-- @'SwaggerItemsArray'@ should be used to specify tuple @'Schema'@s.
371data SwaggerItems t where
370data SwaggerItems t where
372 SwaggerItemsPrimitive :: Maybe (CollectionFormat k) -> ParamSchema k-> SwaggerItems k
371 SwaggerItemsPrimitive :: Maybe (CollectionFormat k) -> ParamSchema k-> SwaggerItems k
373− SwaggerItemsObject :: Referenced Schema -> SwaggerItems SwaggerKindSchema
372+ SwaggerItemsObject :: Referenced Schema -> SwaggerItems 'SwaggerKindSchema
374− SwaggerItemsArray :: [Referenced Schema] -> SwaggerItems SwaggerKindSchema
373+ SwaggerItemsArray :: [Referenced Schema] -> SwaggerItems 'SwaggerKindSchema
375 deriving (Typeable)
374 deriving (Typeable)
377deriving instance Eq (SwaggerItems t)
376deriving instance Eq (SwaggerItems t)
@@ -393,7 +392,7 @@ swaggerItemsDataType = mkDataType "Data.Swagger.SwaggerItems" [swaggerItemsPrimi
393-- Note: unfortunately we have to write these Data instances by hand,
392-- Note: unfortunately we have to write these Data instances by hand,
394-- to get better contexts / avoid duplicate name when using standalone deriving
393-- to get better contexts / avoid duplicate name when using standalone deriving
396−instance Data t => Data (SwaggerItems (SwaggerKindNormal t)) where
395+instance Data t => Data (SwaggerItems ('SwaggerKindNormal t)) where
397 -- TODO: define gfoldl
396 -- TODO: define gfoldl
398 gunfold k z c = case constrIndex c of
397 gunfold k z c = case constrIndex c of
399 1 -> k (k (z SwaggerItemsPrimitive))
398 1 -> k (k (z SwaggerItemsPrimitive))
@@ -402,7 +401,7 @@ instance Data t => Data (SwaggerItems (SwaggerKindNormal t)) where
402 dataTypeOf _ = swaggerItemsDataType
401 dataTypeOf _ = swaggerItemsDataType
404-- SwaggerItems SwaggerKindParamOtherSchema can be constructed using SwaggerItemsPrimitive only
403-- SwaggerItems SwaggerKindParamOtherSchema can be constructed using SwaggerItemsPrimitive only
405−instance Data (SwaggerItems SwaggerKindParamOtherSchema) where
404+instance Data (SwaggerItems 'SwaggerKindParamOtherSchema) where
406 -- TODO: define gfoldl
405 -- TODO: define gfoldl
407 gunfold k z c = case constrIndex c of
406 gunfold k z c = case constrIndex c of
408 1 -> k (k (z SwaggerItemsPrimitive))
407 1 -> k (k (z SwaggerItemsPrimitive))
@@ -410,18 +409,19 @@ instance Data (SwaggerItems SwaggerKindParamOtherSchema) where
410 toConstr _ = swaggerItemsPrimitiveConstr
409 toConstr _ = swaggerItemsPrimitiveConstr
411 dataTypeOf _ = swaggerItemsDataType
410 dataTypeOf _ = swaggerItemsDataType
413−instance Data (SwaggerItems SwaggerKindSchema) where
412+instance Data (SwaggerItems 'SwaggerKindSchema) where
414 gfoldl _ _ (SwaggerItemsPrimitive _ _) = error $ " Data.Data.gfoldl: Constructor SwaggerItemsPrimitive used to construct SwaggerItems SwaggerKindSchema"
413 gfoldl _ _ (SwaggerItemsPrimitive _ _) = error $ " Data.Data.gfoldl: Constructor SwaggerItemsPrimitive used to construct SwaggerItems SwaggerKindSchema"
415 gfoldl k z (SwaggerItemsObject ref) = z SwaggerItemsObject `k` ref
414 gfoldl k z (SwaggerItemsObject ref) = z SwaggerItemsObject `k` ref
416 gfoldl k z (SwaggerItemsArray ref) = z SwaggerItemsArray `k` ref
415 gfoldl k z (SwaggerItemsArray ref) = z SwaggerItemsArray `k` ref
418 gunfold k z c = case constrIndex c of
417 gunfold k z c = case constrIndex c of
419− 1 -> error $ "Data.Data.gunfold: Constructor " ++ show c ++ " is not of type (SwaggerItems SwaggerKindSchema)"
420 2 -> k (z SwaggerItemsObject)
418 2 -> k (z SwaggerItemsObject)
421 3 -> k (z SwaggerItemsArray)
419 3 -> k (z SwaggerItemsArray)
420+ _ -> error $ "Data.Data.gunfold: Constructor " ++ show c ++ " is not of type (SwaggerItems SwaggerKindSchema)."
422+ toConstr (SwaggerItemsPrimitive _ _) = error "Not supported"
423− toConstr (SwaggerItemsObject _) = swaggerItemsObjectConstr
423+ toConstr (SwaggerItemsObject _) = swaggerItemsObjectConstr
424− toConstr (SwaggerItemsArray _) = swaggerItemsArrayConstr
424+ toConstr (SwaggerItemsArray _) = swaggerItemsArrayConstr
426 dataTypeOf _ = swaggerItemsDataType
426 dataTypeOf _ = swaggerItemsDataType
@@ -430,17 +430,16 @@ data SwaggerKind t
430 = SwaggerKindNormal t
430 = SwaggerKindNormal t
431 | SwaggerKindParamOtherSchema
431 | SwaggerKindParamOtherSchema
432 | SwaggerKindSchema
432 | SwaggerKindSchema
434−#if __GLASGLOW_HASKELL__ < 710
435deriving instance Typeable 'SwaggerKindNormal
435deriving instance Typeable 'SwaggerKindNormal
436deriving instance Typeable 'SwaggerKindParamOtherSchema
436deriving instance Typeable 'SwaggerKindParamOtherSchema
437deriving instance Typeable 'SwaggerKindSchema
437deriving instance Typeable 'SwaggerKindSchema
440type family SwaggerKindType (k :: SwaggerKind *) :: *
439type family SwaggerKindType (k :: SwaggerKind *) :: *
441−type instance SwaggerKindType (SwaggerKindNormal t) = t
440+type instance SwaggerKindType ('SwaggerKindNormal t) = t
442−type instance SwaggerKindType SwaggerKindSchema = Schema
441+type instance SwaggerKindType 'SwaggerKindSchema = Schema
443−type instance SwaggerKindType SwaggerKindParamOtherSchema = ParamOtherSchema
442+type instance SwaggerKindType 'SwaggerKindParamOtherSchema = ParamOtherSchema
445data SwaggerType t where
444data SwaggerType t where
446 SwaggerString :: SwaggerType t
445 SwaggerString :: SwaggerType t
@@ -448,9 +447,9 @@ data SwaggerType t where
448 SwaggerInteger :: SwaggerType t
447 SwaggerInteger :: SwaggerType t
449 SwaggerBoolean :: SwaggerType t
448 SwaggerBoolean :: SwaggerType t
450 SwaggerArray :: SwaggerType t
449 SwaggerArray :: SwaggerType t
451− SwaggerFile :: SwaggerType SwaggerKindParamOtherSchema
450+ SwaggerFile :: SwaggerType 'SwaggerKindParamOtherSchema
452− SwaggerNull :: SwaggerType SwaggerKindSchema
451+ SwaggerNull :: SwaggerType 'SwaggerKindSchema
453− SwaggerObject :: SwaggerType SwaggerKindSchema
452+ SwaggerObject :: SwaggerType 'SwaggerKindSchema
454 deriving (Typeable)
453 deriving (Typeable)
456deriving instance Eq (SwaggerType t)
455deriving instance Eq (SwaggerType t)
@@ -465,27 +464,27 @@ swaggerTypeDataType _ = mkDataType "Data.Swagger.SwaggerType" swaggerTypeConstrs
465swaggerCommonTypes :: [SwaggerType k]
464swaggerCommonTypes :: [SwaggerType k]
466swaggerCommonTypes = [SwaggerString, SwaggerNumber, SwaggerInteger, SwaggerBoolean, SwaggerArray]
465swaggerCommonTypes = [SwaggerString, SwaggerNumber, SwaggerInteger, SwaggerBoolean, SwaggerArray]
468−swaggerParamTypes :: [SwaggerType SwaggerKindParamOtherSchema]
467+swaggerParamTypes :: [SwaggerType 'SwaggerKindParamOtherSchema]
469swaggerParamTypes = swaggerCommonTypes ++ [SwaggerFile]
468swaggerParamTypes = swaggerCommonTypes ++ [SwaggerFile]
471−swaggerSchemaTypes :: [SwaggerType SwaggerKindSchema]
470+swaggerSchemaTypes :: [SwaggerType 'SwaggerKindSchema]
472swaggerSchemaTypes = swaggerCommonTypes ++ [error "SwaggerFile is invalid SwaggerType Schema", SwaggerNull, SwaggerObject]
471swaggerSchemaTypes = swaggerCommonTypes ++ [error "SwaggerFile is invalid SwaggerType Schema", SwaggerNull, SwaggerObject]
474swaggerTypeConstrs :: [Constr]
473swaggerTypeConstrs :: [Constr]
475−swaggerTypeConstrs = map swaggerTypeConstr (swaggerCommonTypes :: [SwaggerType SwaggerKindSchema])
474+swaggerTypeConstrs = map swaggerTypeConstr (swaggerCommonTypes :: [SwaggerType 'SwaggerKindSchema])
476 ++ [swaggerTypeConstr SwaggerFile, swaggerTypeConstr SwaggerNull, swaggerTypeConstr SwaggerObject]
475 ++ [swaggerTypeConstr SwaggerFile, swaggerTypeConstr SwaggerNull, swaggerTypeConstr SwaggerObject]
478−instance Typeable t => Data (SwaggerType (SwaggerKindNormal t)) where
477+instance Typeable t => Data (SwaggerType ('SwaggerKindNormal t)) where
479 gunfold = gunfoldEnum "SwaggerType" swaggerCommonTypes
478 gunfold = gunfoldEnum "SwaggerType" swaggerCommonTypes
480 toConstr = swaggerTypeConstr
479 toConstr = swaggerTypeConstr
481 dataTypeOf = swaggerTypeDataType
480 dataTypeOf = swaggerTypeDataType
483−instance Data (SwaggerType SwaggerKindParamOtherSchema) where
482+instance Data (SwaggerType 'SwaggerKindParamOtherSchema) where
484 gunfold = gunfoldEnum "SwaggerType ParamOtherSchema" swaggerParamTypes
483 gunfold = gunfoldEnum "SwaggerType ParamOtherSchema" swaggerParamTypes
485 toConstr = swaggerTypeConstr
484 toConstr = swaggerTypeConstr
486 dataTypeOf = swaggerTypeDataType
485 dataTypeOf = swaggerTypeDataType
488−instance Data (SwaggerType SwaggerKindSchema) where
487+instance Data (SwaggerType 'SwaggerKindSchema) where
489 gunfold = gunfoldEnum "SwaggerType Schema" swaggerSchemaTypes
488 gunfold = gunfoldEnum "SwaggerType Schema" swaggerSchemaTypes
490 toConstr = swaggerTypeConstr
489 toConstr = swaggerTypeConstr
491 dataTypeOf = swaggerTypeDataType
490 dataTypeOf = swaggerTypeDataType
@@ -525,7 +524,7 @@ data CollectionFormat t where
525 -- Corresponds to multiple parameter instances
524 -- Corresponds to multiple parameter instances
526 -- instead of multiple values for a single instance @foo=bar&foo=baz@.
525 -- instead of multiple values for a single instance @foo=bar&foo=baz@.
527 -- This is valid only for parameters in @'ParamQuery'@ or @'ParamFormData'@.
526 -- This is valid only for parameters in @'ParamQuery'@ or @'ParamFormData'@.
528− CollectionMulti :: CollectionFormat SwaggerKindParamOtherSchema
527+ CollectionMulti :: CollectionFormat 'SwaggerKindParamOtherSchema
529 deriving (Typeable)
528 deriving (Typeable)
531deriving instance Eq (CollectionFormat t)
530deriving instance Eq (CollectionFormat t)
@@ -541,12 +540,12 @@ collectionFormatDataType = mkDataType "Data.Swagger.CollectionFormat" $
541collectionCommonFormats :: [CollectionFormat t]
540collectionCommonFormats :: [CollectionFormat t]
542collectionCommonFormats = [ CollectionCSV, CollectionSSV, CollectionTSV, CollectionPipes ]
541collectionCommonFormats = [ CollectionCSV, CollectionSSV, CollectionTSV, CollectionPipes ]
544−instance Data t => Data (CollectionFormat (SwaggerKindNormal t)) where
543+instance Data t => Data (CollectionFormat ('SwaggerKindNormal t)) where
545 gunfold = gunfoldEnum "CollectionFormat" collectionCommonFormats
544 gunfold = gunfoldEnum "CollectionFormat" collectionCommonFormats
546 toConstr = collectionFormatConstr
545 toConstr = collectionFormatConstr
547 dataTypeOf _ = collectionFormatDataType
546 dataTypeOf _ = collectionFormatDataType
549−deriving instance Data (CollectionFormat SwaggerKindParamOtherSchema)
548+deriving instance Data (CollectionFormat 'SwaggerKindParamOtherSchema)
551type ParamName = Text
550type ParamName = Text
@@ -568,7 +567,7 @@ data Schema = Schema
568 , _schemaMaxProperties :: Maybe Integer
567 , _schemaMaxProperties :: Maybe Integer
569 , _schemaMinProperties :: Maybe Integer
568 , _schemaMinProperties :: Maybe Integer
571− , _schemaParamSchema :: ParamSchema SwaggerKindSchema
570+ , _schemaParamSchema :: ParamSchema 'SwaggerKindSchema
572 } deriving (Eq, Show, Generic, Data, Typeable)
571 } deriving (Eq, Show, Generic, Data, Typeable)
574-- | A @'Schema'@ with an optional name.
573-- | A @'Schema'@ with an optional name.
@@ -682,7 +681,7 @@ data Header = Header
682 { -- | A short description of the header.
681 { -- | A short description of the header.
683 _headerDescription :: Maybe Text
682 _headerDescription :: Maybe Text
685− , _headerParamSchema :: ParamSchema (SwaggerKindNormal Header)
684+ , _headerParamSchema :: ParamSchema ('SwaggerKindNormal Header)
686 } deriving (Eq, Show, Generic, Data, Typeable)
685 } deriving (Eq, Show, Generic, Data, Typeable)
688data Example = Example { getExample :: Map MediaType Value }
687data Example = Example { getExample :: Map MediaType Value }
@@ -1139,17 +1138,17 @@ instance FromJSON Schema where
1139instance FromJSON Header where
1138instance FromJSON Header where
1140 parseJSON = sopSwaggerGenericParseJSON
1139 parseJSON = sopSwaggerGenericParseJSON
1142−instance (FromJSON (CollectionFormat (SwaggerKindNormal t)), FromJSON (ParamSchema (SwaggerKindNormal t))) => FromJSON (SwaggerItems (SwaggerKindNormal t)) where
1141+instance (FromJSON (CollectionFormat ('SwaggerKindNormal t)), FromJSON (ParamSchema ('SwaggerKindNormal t))) => FromJSON (SwaggerItems ('SwaggerKindNormal t)) where
1143 parseJSON = withObject "SwaggerItemsPrimitive" $ \o -> SwaggerItemsPrimitive
1142 parseJSON = withObject "SwaggerItemsPrimitive" $ \o -> SwaggerItemsPrimitive
1144 <$> o .:? "collectionFormat"
1143 <$> o .:? "collectionFormat"
1145 <*> (o .: "items" >>= parseJSON)
1144 <*> (o .: "items" >>= parseJSON)
1147−instance FromJSON (SwaggerItems SwaggerKindParamOtherSchema) where
1146+instance FromJSON (SwaggerItems 'SwaggerKindParamOtherSchema) where
1148 parseJSON = withObject "SwaggerItemsPrimitive" $ \o -> SwaggerItemsPrimitive
1147 parseJSON = withObject "SwaggerItemsPrimitive" $ \o -> SwaggerItemsPrimitive
1149 <$> o .:? "collectionFormat"
1148 <$> o .:? "collectionFormat"
1150 <*> ((o .: "items" >>= parseJSON) <|> fail ("foo" ++ show o))
1149 <*> ((o .: "items" >>= parseJSON) <|> fail ("foo" ++ show o))
1152−instance FromJSON (SwaggerItems SwaggerKindSchema) where
1151+instance FromJSON (SwaggerItems 'SwaggerKindSchema) where
1153 parseJSON js@(Object _) = SwaggerItemsObject <$> parseJSON js
1152 parseJSON js@(Object _) = SwaggerItemsObject <$> parseJSON js
1154 parseJSON js@(Array _) = SwaggerItemsArray <$> parseJSON js
1153 parseJSON js@(Array _) = SwaggerItemsArray <$> parseJSON js
1155 parseJSON _ = empty
1154 parseJSON _ = empty
@@ -1226,30 +1225,30 @@ instance FromJSON (Referenced Response) where parseJSON = referencedParseJSON "#
1226instance FromJSON Xml where
1225instance FromJSON Xml where
1227 parseJSON = genericParseJSON (jsonPrefix "xml")
1226 parseJSON = genericParseJSON (jsonPrefix "xml")
1229−instance FromJSON (SwaggerType SwaggerKindSchema) where
1228+instance FromJSON (SwaggerType 'SwaggerKindSchema) where
1230 parseJSON = parseOneOf [SwaggerString, SwaggerInteger, SwaggerNumber, SwaggerBoolean, SwaggerArray, SwaggerNull, SwaggerObject]
1229 parseJSON = parseOneOf [SwaggerString, SwaggerInteger, SwaggerNumber, SwaggerBoolean, SwaggerArray, SwaggerNull, SwaggerObject]
1232−instance FromJSON (SwaggerType SwaggerKindParamOtherSchema) where
1231+instance FromJSON (SwaggerType 'SwaggerKindParamOtherSchema) where
1233 parseJSON = parseOneOf [SwaggerString, SwaggerInteger, SwaggerNumber, SwaggerBoolean, SwaggerArray, SwaggerFile]
1232 parseJSON = parseOneOf [SwaggerString, SwaggerInteger, SwaggerNumber, SwaggerBoolean, SwaggerArray, SwaggerFile]
1235−instance FromJSON (SwaggerType (SwaggerKindNormal t)) where
1234+instance FromJSON (SwaggerType ('SwaggerKindNormal t)) where
1236 parseJSON = parseOneOf [SwaggerString, SwaggerInteger, SwaggerNumber, SwaggerBoolean, SwaggerArray]
1235 parseJSON = parseOneOf [SwaggerString, SwaggerInteger, SwaggerNumber, SwaggerBoolean, SwaggerArray]
1238−instance FromJSON (CollectionFormat (SwaggerKindNormal t)) where
1237+instance FromJSON (CollectionFormat ('SwaggerKindNormal t)) where
1239 parseJSON = parseOneOf [CollectionCSV, CollectionSSV, CollectionTSV, CollectionPipes]
1238 parseJSON = parseOneOf [CollectionCSV, CollectionSSV, CollectionTSV, CollectionPipes]
1241-- NOTE: There aren't collections of 'Schema'
1240-- NOTE: There aren't collections of 'Schema'
1242--instance FromJSON (CollectionFormat (SwaggerKindSchema)) where
1241--instance FromJSON (CollectionFormat (SwaggerKindSchema)) where
1243-- parseJSON = parseOneOf [CollectionCSV, CollectionSSV, CollectionTSV, CollectionPipes]
1242-- parseJSON = parseOneOf [CollectionCSV, CollectionSSV, CollectionTSV, CollectionPipes]
1245−instance FromJSON (CollectionFormat SwaggerKindParamOtherSchema) where
1244+instance FromJSON (CollectionFormat 'SwaggerKindParamOtherSchema) where
1246 parseJSON = parseOneOf [CollectionCSV, CollectionSSV, CollectionTSV, CollectionPipes, CollectionMulti]
1245 parseJSON = parseOneOf [CollectionCSV, CollectionSSV, CollectionTSV, CollectionPipes, CollectionMulti]
1248−instance (FromJSON (SwaggerType (SwaggerKindNormal t)), FromJSON (SwaggerItems (SwaggerKindNormal t))) => FromJSON (ParamSchema (SwaggerKindNormal t)) where
1247+instance (FromJSON (SwaggerType ('SwaggerKindNormal t)), FromJSON (SwaggerItems ('SwaggerKindNormal t))) => FromJSON (ParamSchema ('SwaggerKindNormal t)) where
1249 parseJSON = sopSwaggerGenericParseJSON
1248 parseJSON = sopSwaggerGenericParseJSON
1250−instance FromJSON (ParamSchema SwaggerKindParamOtherSchema) where
1249+instance FromJSON (ParamSchema 'SwaggerKindParamOtherSchema) where
1251 parseJSON = sopSwaggerGenericParseJSON
1250 parseJSON = sopSwaggerGenericParseJSON
1252−instance FromJSON (ParamSchema SwaggerKindSchema) where
1251+instance FromJSON (ParamSchema 'SwaggerKindSchema) where
1253 parseJSON = sopSwaggerGenericParseJSON
1252 parseJSON = sopSwaggerGenericParseJSON
1255-------------------------------------------------------------------------------
1254-------------------------------------------------------------------------------
@@ -1292,12 +1291,12 @@ instance HasSwaggerAesonOptions Schema where
1292instance HasSwaggerAesonOptions Swagger where
1291instance HasSwaggerAesonOptions Swagger where
1293 swaggerAesonOptions _ = mkSwaggerAesonOptions "swagger" & saoAdditionalPairs .~ [("swagger", "2.0")]
1292 swaggerAesonOptions _ = mkSwaggerAesonOptions "swagger" & saoAdditionalPairs .~ [("swagger", "2.0")]
1295−instance HasSwaggerAesonOptions (ParamSchema (SwaggerKindNormal t)) where
1294+instance HasSwaggerAesonOptions (ParamSchema ('SwaggerKindNormal t)) where
1296 swaggerAesonOptions _ = mkSwaggerAesonOptions "paramSchema" & saoSubObject ?~ "items"
1295 swaggerAesonOptions _ = mkSwaggerAesonOptions "paramSchema" & saoSubObject ?~ "items"
1297−instance HasSwaggerAesonOptions (ParamSchema SwaggerKindParamOtherSchema) where
1296+instance HasSwaggerAesonOptions (ParamSchema 'SwaggerKindParamOtherSchema) where
1298 swaggerAesonOptions _ = mkSwaggerAesonOptions "paramSchema" & saoSubObject ?~ "items"
1297 swaggerAesonOptions _ = mkSwaggerAesonOptions "paramSchema" & saoSubObject ?~ "items"
1299-- NOTE: Schema doesn't have 'items' sub object!
1298-- NOTE: Schema doesn't have 'items' sub object!
1300−instance HasSwaggerAesonOptions (ParamSchema SwaggerKindSchema) where
1299+instance HasSwaggerAesonOptions (ParamSchema 'SwaggerKindSchema) where
1301 swaggerAesonOptions _ = mkSwaggerAesonOptions "paramSchema"
1300 swaggerAesonOptions _ = mkSwaggerAesonOptions "paramSchema"
1303instance AesonDefaultValue (ParamSchema s)
1302instance AesonDefaultValue (ParamSchema s)