git.iko.soy/typeable/openapi3
on master help sign in
Add HasDescription class
51a8cc0Nickolay Kudasov
src/Data/Swagger/Internal.hs+1−1
@@ -521,7 +521,7 @@ type HeaderName = Text
521
521
522data SwaggerHeader = SwaggerHeader
522data SwaggerHeader = SwaggerHeader
523 { -- | A short description of the header.
523 { -- | A short description of the header.
524− _swaggerHeaderDescription :: Maybe String
524+ _swaggerHeaderDescription :: Maybe Text
525
525
526 -- | The type of the object.
526 -- | The type of the object.
527 , _swaggerHeaderType :: SwaggerItemsType
527 , _swaggerHeaderType :: SwaggerItemsType
src/Data/Swagger/Lens.hs+14
@@ -1,3 +1,4 @@
1+{-# LANGUAGE FlexibleInstances #-}
1{-# LANGUAGE FunctionalDependencies #-}
2{-# LANGUAGE FunctionalDependencies #-}
2{-# LANGUAGE MultiParamTypeClasses #-}
3{-# LANGUAGE MultiParamTypeClasses #-}
3{-# LANGUAGE TemplateHaskell #-}
4{-# LANGUAGE TemplateHaskell #-}
@@ -43,6 +44,19 @@ makeLenses ''SwaggerExternalDocs
43-- Helper classy lenses
44-- Helper classy lenses
44-- =======================================================================
45-- =======================================================================
45
46
47+class HasDescription s d | s -> d where
48+ description :: Lens' s d
49+
50+instance HasDescription SwaggerResponse Text where description = swaggerResponseDescription
51+instance HasDescription SwaggerInfo (Maybe Text) where description = swaggerInfoDescription
52+instance HasDescription SwaggerTag (Maybe Text) where description = swaggerTagDescription
53+instance HasDescription SwaggerOperation (Maybe Text) where description = swaggerOperationDescription
54+instance HasDescription SwaggerParameter (Maybe Text) where description = swaggerParameterDescription
55+instance HasDescription SwaggerHeader (Maybe Text) where description = swaggerHeaderDescription
56+instance HasDescription SwaggerSchema (Maybe Text) where description = swaggerSchemaDescription
57+instance HasDescription SwaggerSecurityScheme (Maybe Text) where description = swaggerSecuritySchemeDescription
58+instance HasDescription SwaggerExternalDocs (Maybe Text) where description = swaggerExternalDocsDescription
59+
46class HasSwaggerSchemaCommon s where
60class HasSwaggerSchemaCommon s where
47 schemaCommon :: Lens' s SwaggerSchemaCommon
61 schemaCommon :: Lens' s SwaggerSchemaCommon
48
62