We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent dcdc67c commit 0f89c43Copy full SHA for 0f89c43
2 files changed
how-does-servants-type-dsl-work.cabal
@@ -9,5 +9,6 @@ maintainer: hi@bradparker.com
9
executable server
10
main-is: Main.hs
11
build-depends: base ^>=4.12.0.0
12
+ , servant-server
13
hs-source-dirs: src
14
default-language: Haskell2010
src/Main.hs
@@ -1,6 +1,29 @@
1
+{-# LANGUAGE DataKinds #-}
2
+{-# LANGUAGE TypeOperators #-}
3
{-# OPTIONS_GHC -Wall #-}
4
5
module Main where
6
7
+import Servant
8
+ ( (:<|>)
+ , (:>)
+ , Capture
+ , Get
+ , JSON
+ )
+
15
+data User = User
16
17
+type UsersIndex =
18
+ Get '[JSON] [User]
19
20
+type UsersShow =
21
+ Capture "username" String
22
+ :> Get '[JSON] User
23
24
+type UsersAPI =
25
+ "users"
26
+ :> (UsersIndex :<|> UsersShow)
27
28
main :: IO ()
29
main = putStrLn "Hello, Haskell!"
0 commit comments