git.iko.soy/haskell-servant/servant-elm
on master help sign in
Moves polymorphic data to a separate module
commit0365af3a9072feab0ffb361ae98fdacf8fad4b79 author= <=> dateWed 30 Oct 2019, 20:16 (7 years ago) parenta98cff5
4 files changed+18−9
servant-elm.cabal+1 test/Common.hs−8 test/GenerateSpec.hs+2−1 test/PolymorphicData.hs+15
servant-elm.cabal+1
@@ -48,6 +48,7 @@ test-suite servant-elm-test
4848 hs-source-dirs: test
4949 main-is: GenerateSpec.hs
5050 other-modules: Common
51+ , PolymorphicData
5152 build-depends:
5253 Diff
5354 , HUnit
test/Common.hs−8
@@ -15,15 +15,7 @@ data Book = Book
1515 { title :: String
1616 }
1717
18−data PolymorphicData a b = PolymorphicData a b deriving (Show, Eq)
19−data SomeRecord = SomeRecord
20− { recordId :: Int
21− , recordName :: String
22− } deriving (Show, Eq)
23−
2418deriveBoth defaultOptions ''Book
25−deriveBoth defaultOptions ''PolymorphicData
26−deriveBoth defaultOptions ''SomeRecord
2719
2820type TestApi =
2921 "one"
test/GenerateSpec.hs+2−1
@@ -17,7 +17,8 @@ import Servant.Elm
1717import Test.Hspec (Spec, describe, hspec, it)
1818import Test.HUnit (Assertion, assertEqual)
1919
20−import Common (testApi, SomeRecord(..), PolymorphicData(..))
20+import Common (testApi)
21+import PolymorphicData (SomeRecord(..), PolymorphicData(..))
2122
2223
2324main :: IO ()
test/PolymorphicData.hsnew file+15
@@ -0,0 +1,15 @@
1+{-# LANGUAGE TemplateHaskell #-}
2+
3+module PolymorphicData where
4+
5+import Servant.Elm
6+
7+
8+data PolymorphicData a b = PolymorphicData a b deriving (Show, Eq)
9+data SomeRecord = SomeRecord
10+ { recordId :: Int
11+ , recordName :: String
12+ } deriving (Show, Eq)
13+
14+deriveBoth defaultOptions ''PolymorphicData
15+deriveBoth defaultOptions ''SomeRecord