git.iko.soy/typeable/swagger2
on master help sign in
Use newtype Text wrapper for URL, not Network.URL
708c753Nickolay Kudasov
src/Data/Swagger/Internal.hs+4−1
@@ -1,6 +1,8 @@
1{-# LANGUAGE DeriveGeneric #-}
1{-# LANGUAGE DeriveGeneric #-}
2+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
2module Data.Swagger.Internal where
3module Data.Swagger.Internal where
3
4
5+import Data.Aeson (ToJSON, FromJSON)
4import qualified Data.Aeson as JSON
6import qualified Data.Aeson as JSON
5import Data.HashMap.Strict (HashMap)
7import Data.HashMap.Strict (HashMap)
6import Data.Text (Text)
8import Data.Text (Text)
@@ -8,7 +10,6 @@ import Data.Hashable (Hashable)
8import GHC.Generics (Generic)
10import GHC.Generics (Generic)
9import Network (HostName, PortNumber)
11import Network (HostName, PortNumber)
10import Network.HTTP.Media (MediaType)
12import Network.HTTP.Media (MediaType)
11−import Network.URL (URL)
12
13
13-- | This is the root document object for the API specification.
14-- | This is the root document object for the API specification.
14data Swagger = Swagger
15data Swagger = Swagger
@@ -622,3 +623,5 @@ data SwaggerExternalDocs = SwaggerExternalDocs
622 , swaggerExternalDocsUrl :: URL
623 , swaggerExternalDocsUrl :: URL
623 } deriving (Show)
624 } deriving (Show)
624
625
626+newtype URL = URL { getUrl :: Text } deriving (Show, ToJSON, FromJSON)
627+
swagger2.cabal−1
@@ -26,7 +26,6 @@ library
26 , network
26 , network
27 , text
27 , text
28 , unordered-containers
28 , unordered-containers
29− , url
30 default-language: Haskell2010
29 default-language: Haskell2010
31
30
32source-repository head
31source-repository head