on master help sign in
Merge pull request #504 from haskell-servant/jkarni/doc-fixes
ff40b32Julian Arni
doc/tutorial/Server.lhs+26−26
@@ -809,7 +809,7 @@ type UserAPI3 = -- view the user with given userid, in JSON
809 Capture "userid" Int :> Get '[JSON] User
809 Capture "userid" Int :> Get '[JSON] User
810
810
811 :<|> -- delete the user with given userid. empty response
811 :<|> -- delete the user with given userid. empty response
812− Capture "userid" Int :> Delete '[] ()
812+ Capture "userid" Int :> DeleteNoContent '[JSON] NoContent
813```
813```
814
814
815We can instead factor out the `userid`:
815We can instead factor out the `userid`:
@@ -817,7 +817,7 @@ We can instead factor out the `userid`:
817``` haskell
817``` haskell
818type UserAPI4 = Capture "userid" Int :>
818type UserAPI4 = Capture "userid" Int :>
819 ( Get '[JSON] User
819 ( Get '[JSON] User
820− :<|> Delete '[] ()
820+ :<|> DeleteNoContent '[JSON] NoContent
821 )
821 )
822```
822```
823
823
@@ -826,10 +826,10 @@ corresponding `Server`:
826
826
827``` haskell ignore
827``` haskell ignore
828Server UserAPI3 = (Int -> Handler User)
828Server UserAPI3 = (Int -> Handler User)
829− :<|> (Int -> Handler ())
829+ :<|> (Int -> Handler NoContent)
830
830
831Server UserAPI4 = Int -> ( Handler User
831Server UserAPI4 = Int -> ( Handler User
832− :<|> Handler ()
832+ :<|> Handler NoContent
833 )
833 )
834```
834```
835
835
@@ -844,7 +844,7 @@ server8 = getUser :<|> deleteUser
844 where getUser :: Int -> Handler User
844 where getUser :: Int -> Handler User
845 getUser _userid = error "..."
845 getUser _userid = error "..."
846
846
847− deleteUser :: Int -> Handler ()
847+ deleteUser :: Int -> Handler NoContent
848 deleteUser _userid = error "..."
848 deleteUser _userid = error "..."
849
849
850-- notice how getUser and deleteUser
850-- notice how getUser and deleteUser
@@ -856,7 +856,7 @@ server9 userid = getUser userid :<|> deleteUser userid
856 where getUser :: Int -> Handler User
856 where getUser :: Int -> Handler User
857 getUser = error "..."
857 getUser = error "..."
858
858
859− deleteUser :: Int -> Handler ()
859+ deleteUser :: Int -> Handler NoContent
860 deleteUser = error "..."
860 deleteUser = error "..."
861```
861```
862
862
@@ -875,13 +875,13 @@ type API1 = "users" :>
875-- we factor out the Request Body
875-- we factor out the Request Body
876type API2 = ReqBody '[JSON] User :>
876type API2 = ReqBody '[JSON] User :>
877 ( Get '[JSON] User -- just display the same user back, don't register it
877 ( Get '[JSON] User -- just display the same user back, don't register it
878− :<|> Post '[JSON] () -- register the user. empty response
878+ :<|> PostNoContent '[JSON] NoContent -- register the user. empty response
879 )
879 )
880
880
881-- we factor out a Header
881-- we factor out a Header
882type API3 = Header "Authorization" Token :>
882type API3 = Header "Authorization" Token :>
883 ( Get '[JSON] SecretData -- get some secret data, if authorized
883 ( Get '[JSON] SecretData -- get some secret data, if authorized
884− :<|> ReqBody '[JSON] SecretData :> Post '[] () -- add some secret data, if authorized
884+ :<|> ReqBody '[JSON] SecretData :> PostNoContent '[JSON] NoContent -- add some secret data, if authorized
885 )
885 )
886
886
887newtype Token = Token ByteString
887newtype Token = Token ByteString
@@ -894,11 +894,11 @@ API type only at the end.
894``` haskell
894``` haskell
895type UsersAPI =
895type UsersAPI =
896 Get '[JSON] [User] -- list users
896 Get '[JSON] [User] -- list users
897− :<|> ReqBody '[JSON] User :> Post '[] () -- add a user
897+ :<|> ReqBody '[JSON] User :> PostNoContent '[JSON] NoContent -- add a user
898 :<|> Capture "userid" Int :>
898 :<|> Capture "userid" Int :>
899 ( Get '[JSON] User -- view a user
899 ( Get '[JSON] User -- view a user
900− :<|> ReqBody '[JSON] User :> Put '[] () -- update a user
900+ :<|> ReqBody '[JSON] User :> PutNoContent '[JSON] NoContent -- update a user
901− :<|> Delete '[] () -- delete a user
901+ :<|> DeleteNoContent '[JSON] NoContent -- delete a user
902 )
902 )
903
903
904usersServer :: Server UsersAPI
904usersServer :: Server UsersAPI
@@ -907,7 +907,7 @@ usersServer = getUsers :<|> newUser :<|> userOperations
907 where getUsers :: Handler [User]
907 where getUsers :: Handler [User]
908 getUsers = error "..."
908 getUsers = error "..."
909
909
910− newUser :: User -> Handler ()
910+ newUser :: User -> Handler NoContent
911 newUser = error "..."
911 newUser = error "..."
912
912
913 userOperations userid =
913 userOperations userid =
@@ -917,21 +917,21 @@ usersServer = getUsers :<|> newUser :<|> userOperations
917 viewUser :: Int -> Handler User
917 viewUser :: Int -> Handler User
918 viewUser = error "..."
918 viewUser = error "..."
919
919
920− updateUser :: Int -> User -> Handler ()
920+ updateUser :: Int -> User -> Handler NoContent
921 updateUser = error "..."
921 updateUser = error "..."
922
922
923− deleteUser :: Int -> Handler ()
923+ deleteUser :: Int -> Handler NoContent
924 deleteUser = error "..."
924 deleteUser = error "..."
925```
925```
926
926
927``` haskell
927``` haskell
928type ProductsAPI =
928type ProductsAPI =
929 Get '[JSON] [Product] -- list products
929 Get '[JSON] [Product] -- list products
930− :<|> ReqBody '[JSON] Product :> Post '[] () -- add a product
930+ :<|> ReqBody '[JSON] Product :> PostNoContent '[JSON] NoContent -- add a product
931 :<|> Capture "productid" Int :>
931 :<|> Capture "productid" Int :>
932 ( Get '[JSON] Product -- view a product
932 ( Get '[JSON] Product -- view a product
933− :<|> ReqBody '[JSON] Product :> Put '[] () -- update a product
933+ :<|> ReqBody '[JSON] Product :> PutNoContent '[JSON] NoContent -- update a product
934− :<|> Delete '[] () -- delete a product
934+ :<|> DeleteNoContent '[JSON] NoContent -- delete a product
935 )
935 )
936
936
937data Product = Product { productId :: Int }
937data Product = Product { productId :: Int }
@@ -942,7 +942,7 @@ productsServer = getProducts :<|> newProduct :<|> productOperations
942 where getProducts :: Handler [Product]
942 where getProducts :: Handler [Product]
943 getProducts = error "..."
943 getProducts = error "..."
944
944
945− newProduct :: Product -> Handler ()
945+ newProduct :: Product -> Handler NoContent
946 newProduct = error "..."
946 newProduct = error "..."
947
947
948 productOperations productid =
948 productOperations productid =
@@ -952,10 +952,10 @@ productsServer = getProducts :<|> newProduct :<|> productOperations
952 viewProduct :: Int -> Handler Product
952 viewProduct :: Int -> Handler Product
953 viewProduct = error "..."
953 viewProduct = error "..."
954
954
955− updateProduct :: Int -> Product -> Handler ()
955+ updateProduct :: Int -> Product -> Handler NoContent
956 updateProduct = error "..."
956 updateProduct = error "..."
957
957
958− deleteProduct :: Int -> Handler ()
958+ deleteProduct :: Int -> Handler NoContent
959 deleteProduct = error "..."
959 deleteProduct = error "..."
960```
960```
961
961
@@ -975,20 +975,20 @@ abstract that away:
975-- indexed by values of type 'i'
975-- indexed by values of type 'i'
976type APIFor a i =
976type APIFor a i =
977 Get '[JSON] [a] -- list 'a's
977 Get '[JSON] [a] -- list 'a's
978− :<|> ReqBody '[JSON] a :> Post '[] () -- add an 'a'
978+ :<|> ReqBody '[JSON] a :> PostNoContent '[JSON] NoContent -- add an 'a'
979 :<|> Capture "id" i :>
979 :<|> Capture "id" i :>
980 ( Get '[JSON] a -- view an 'a' given its "identifier" of type 'i'
980 ( Get '[JSON] a -- view an 'a' given its "identifier" of type 'i'
981− :<|> ReqBody '[JSON] a :> Put '[] () -- update an 'a'
981+ :<|> ReqBody '[JSON] a :> PutNoContent '[JSON] NoContent -- update an 'a'
982− :<|> Delete '[] () -- delete an 'a'
982+ :<|> DeleteNoContent '[JSON] NoContent -- delete an 'a'
983 )
983 )
984
984
985-- Build the appropriate 'Server'
985-- Build the appropriate 'Server'
986-- given the handlers of the right type.
986-- given the handlers of the right type.
987serverFor :: Handler [a] -- handler for listing of 'a's
987serverFor :: Handler [a] -- handler for listing of 'a's
988− -> (a -> Handler ()) -- handler for adding an 'a'
988+ -> (a -> Handler NoContent) -- handler for adding an 'a'
989 -> (i -> Handler a) -- handler for viewing an 'a' given its identifier of type 'i'
989 -> (i -> Handler a) -- handler for viewing an 'a' given its identifier of type 'i'
990− -> (i -> a -> Handler ()) -- updating an 'a' with given id
990+ -> (i -> a -> Handler NoContent) -- updating an 'a' with given id
991− -> (i -> Handler ()) -- deleting an 'a' given its id
991+ -> (i -> Handler NoContent) -- deleting an 'a' given its id
992 -> Server (APIFor a i)
992 -> Server (APIFor a i)
993serverFor = error "..."
993serverFor = error "..."
994-- implementation left as an exercise. contact us on IRC
994-- implementation left as an exercise. contact us on IRC
doc/tutorial/index.rst+2−8
@@ -3,14 +3,8 @@ Tutorial
3
3
4This is an introductory tutorial to **servant**.
4This is an introductory tutorial to **servant**.
5
5
6−.. note::
7− This tutorial is for the latest version of servant. The tutorial for
8− servant-0.4 can be viewed
9− `here <https://haskell-servant.github.io/tutorial/>`_.
10−
11−(Any comments, issues or feedback about the tutorial can be handled
6+(Any comments, issues or feedback about the tutorial can be submitted
12−through
13−`servant's issue tracker <http://github.com/haskell-servant/servant/issues>`_.)
7+to `servant's issue tracker <http://github.com/haskell-servant/servant/issues>`_.)
14
8
15
9
16.. toctree::
10.. toctree::
servant-server/src/Servant/Server/Internal/ServantErr.hs+30−30
@@ -31,7 +31,7 @@ responseServantErr ServantErr{..} = responseLBS status errHeaders errBody
31-- Example:
31-- Example:
32--
32--
33-- > failingHandler :: Handler ()
33-- > failingHandler :: Handler ()
34−-- > failingHandler = throwErr $ err300 { errBody = "I can't choose." }
34+-- > failingHandler = throwError $ err300 { errBody = "I can't choose." }
35--
35--
36err300 :: ServantErr
36err300 :: ServantErr
37err300 = ServantErr { errHTTPCode = 300
37err300 = ServantErr { errHTTPCode = 300
@@ -45,7 +45,7 @@ err300 = ServantErr { errHTTPCode = 300
45-- Example:
45-- Example:
46--
46--
47-- > failingHandler :: Handler ()
47-- > failingHandler :: Handler ()
48−-- > failingHandler = throwErr err301
48+-- > failingHandler = throwError err301
49--
49--
50err301 :: ServantErr
50err301 :: ServantErr
51err301 = ServantErr { errHTTPCode = 301
51err301 = ServantErr { errHTTPCode = 301
@@ -59,7 +59,7 @@ err301 = ServantErr { errHTTPCode = 301
59-- Example:
59-- Example:
60--
60--
61-- > failingHandler :: Handler ()
61-- > failingHandler :: Handler ()
62−-- > failingHandler = throwErr err302
62+-- > failingHandler = throwError err302
63--
63--
64err302 :: ServantErr
64err302 :: ServantErr
65err302 = ServantErr { errHTTPCode = 302
65err302 = ServantErr { errHTTPCode = 302
@@ -73,7 +73,7 @@ err302 = ServantErr { errHTTPCode = 302
73-- Example:
73-- Example:
74--
74--
75-- > failingHandler :: Handler ()
75-- > failingHandler :: Handler ()
76−-- > failingHandler = throwErr err303
76+-- > failingHandler = throwError err303
77--
77--
78err303 :: ServantErr
78err303 :: ServantErr
79err303 = ServantErr { errHTTPCode = 303
79err303 = ServantErr { errHTTPCode = 303
@@ -87,7 +87,7 @@ err303 = ServantErr { errHTTPCode = 303
87-- Example:
87-- Example:
88--
88--
89-- > failingHandler :: Handler ()
89-- > failingHandler :: Handler ()
90−-- > failingHandler = throwErr err304
90+-- > failingHandler = throwError err304
91--
91--
92err304 :: ServantErr
92err304 :: ServantErr
93err304 = ServantErr { errHTTPCode = 304
93err304 = ServantErr { errHTTPCode = 304
@@ -101,7 +101,7 @@ err304 = ServantErr { errHTTPCode = 304
101-- Example:
101-- Example:
102--
102--
103-- > failingHandler :: Handler ()
103-- > failingHandler :: Handler ()
104−-- > failingHandler = throwErr err305
104+-- > failingHandler = throwError err305
105--
105--
106err305 :: ServantErr
106err305 :: ServantErr
107err305 = ServantErr { errHTTPCode = 305
107err305 = ServantErr { errHTTPCode = 305
@@ -115,7 +115,7 @@ err305 = ServantErr { errHTTPCode = 305
115-- Example:
115-- Example:
116--
116--
117-- > failingHandler :: Handler ()
117-- > failingHandler :: Handler ()
118−-- > failingHandler = throwErr err307
118+-- > failingHandler = throwError err307
119--
119--
120err307 :: ServantErr
120err307 :: ServantErr
121err307 = ServantErr { errHTTPCode = 307
121err307 = ServantErr { errHTTPCode = 307
@@ -129,7 +129,7 @@ err307 = ServantErr { errHTTPCode = 307
129-- Example:
129-- Example:
130--
130--
131-- > failingHandler :: Handler ()
131-- > failingHandler :: Handler ()
132−-- > failingHandler = throwErr $ err400 { errBody = "Your request makes no sense to me." }
132+-- > failingHandler = throwError $ err400 { errBody = "Your request makes no sense to me." }
133--
133--
134err400 :: ServantErr
134err400 :: ServantErr
135err400 = ServantErr { errHTTPCode = 400
135err400 = ServantErr { errHTTPCode = 400
@@ -143,7 +143,7 @@ err400 = ServantErr { errHTTPCode = 400
143-- Example:
143-- Example:
144--
144--
145-- > failingHandler :: Handler ()
145-- > failingHandler :: Handler ()
146−-- > failingHandler = throwErr $ err401 { errBody = "Your credentials are invalid." }
146+-- > failingHandler = throwError $ err401 { errBody = "Your credentials are invalid." }
147--
147--
148err401 :: ServantErr
148err401 :: ServantErr
149err401 = ServantErr { errHTTPCode = 401
149err401 = ServantErr { errHTTPCode = 401
@@ -157,7 +157,7 @@ err401 = ServantErr { errHTTPCode = 401
157-- Example:
157-- Example:
158--
158--
159-- > failingHandler :: Handler ()
159-- > failingHandler :: Handler ()
160−-- > failingHandler = throwErr $ err402 { errBody = "You have 0 credits. Please give me $$$." }
160+-- > failingHandler = throwError $ err402 { errBody = "You have 0 credits. Please give me $$$." }
161--
161--
162err402 :: ServantErr
162err402 :: ServantErr
163err402 = ServantErr { errHTTPCode = 402
163err402 = ServantErr { errHTTPCode = 402
@@ -171,7 +171,7 @@ err402 = ServantErr { errHTTPCode = 402
171-- Example:
171-- Example:
172--
172--
173-- > failingHandler :: Handler ()
173-- > failingHandler :: Handler ()
174−-- > failingHandler = throwErr $ err403 { errBody = "Please login first." }
174+-- > failingHandler = throwError $ err403 { errBody = "Please login first." }
175--
175--
176err403 :: ServantErr
176err403 :: ServantErr
177err403 = ServantErr { errHTTPCode = 403
177err403 = ServantErr { errHTTPCode = 403
@@ -185,7 +185,7 @@ err403 = ServantErr { errHTTPCode = 403
185-- Example:
185-- Example:
186--
186--
187-- > failingHandler :: Handler ()
187-- > failingHandler :: Handler ()
188−-- > failingHandler = throwErr $ err404 { errBody = "(╯°□°)╯︵ ┻━┻)." }
188+-- > failingHandler = throwError $ err404 { errBody = "(╯°□°)╯︵ ┻━┻)." }
189--
189--
190err404 :: ServantErr
190err404 :: ServantErr
191err404 = ServantErr { errHTTPCode = 404
191err404 = ServantErr { errHTTPCode = 404
@@ -199,7 +199,7 @@ err404 = ServantErr { errHTTPCode = 404
199-- Example:
199-- Example:
200--
200--
201-- > failingHandler :: Handler ()
201-- > failingHandler :: Handler ()
202−-- > failingHandler = throwErr $ err405 { errBody = "Your account privileges does not allow for this. Please pay $$$." }
202+-- > failingHandler = throwError $ err405 { errBody = "Your account privileges does not allow for this. Please pay $$$." }
203--
203--
204err405 :: ServantErr
204err405 :: ServantErr
205err405 = ServantErr { errHTTPCode = 405
205err405 = ServantErr { errHTTPCode = 405
@@ -213,7 +213,7 @@ err405 = ServantErr { errHTTPCode = 405
213-- Example:
213-- Example:
214--
214--
215-- > failingHandler :: Handler ()
215-- > failingHandler :: Handler ()
216−-- > failingHandler = throwErr err406
216+-- > failingHandler = throwError err406
217--
217--
218err406 :: ServantErr
218err406 :: ServantErr
219err406 = ServantErr { errHTTPCode = 406
219err406 = ServantErr { errHTTPCode = 406
@@ -227,7 +227,7 @@ err406 = ServantErr { errHTTPCode = 406
227-- Example:
227-- Example:
228--
228--
229-- > failingHandler :: Handler ()
229-- > failingHandler :: Handler ()
230−-- > failingHandler = throwErr err407
230+-- > failingHandler = throwError err407
231--
231--
232err407 :: ServantErr
232err407 :: ServantErr
233err407 = ServantErr { errHTTPCode = 407
233err407 = ServantErr { errHTTPCode = 407
@@ -241,7 +241,7 @@ err407 = ServantErr { errHTTPCode = 407
241-- Example:
241-- Example:
242--
242--
243-- > failingHandler :: Handler ()
243-- > failingHandler :: Handler ()
244−-- > failingHandler = throwErr $ err409 { errBody = "Transaction conflicts with 59879cb56c7c159231eeacdd503d755f7e835f74" }
244+-- > failingHandler = throwError $ err409 { errBody = "Transaction conflicts with 59879cb56c7c159231eeacdd503d755f7e835f74" }
245--
245--
246err409 :: ServantErr
246err409 :: ServantErr
247err409 = ServantErr { errHTTPCode = 409
247err409 = ServantErr { errHTTPCode = 409
@@ -255,7 +255,7 @@ err409 = ServantErr { errHTTPCode = 409
255-- Example:
255-- Example:
256--
256--
257-- > failingHandler :: Handler ()
257-- > failingHandler :: Handler ()
258−-- > failingHandler = throwErr $ err410 { errBody = "I know it was here at some point, but.. I blame bad luck." }
258+-- > failingHandler = throwError $ err410 { errBody = "I know it was here at some point, but.. I blame bad luck." }
259--
259--
260err410 :: ServantErr
260err410 :: ServantErr
261err410 = ServantErr { errHTTPCode = 410
261err410 = ServantErr { errHTTPCode = 410
@@ -269,7 +269,7 @@ err410 = ServantErr { errHTTPCode = 410
269-- Example:
269-- Example:
270--
270--
271-- > failingHandler :: Handler ()
271-- > failingHandler :: Handler ()
272−-- > failingHandler = throwErr err411
272+-- > failingHandler = throwError err411
273--
273--
274err411 :: ServantErr
274err411 :: ServantErr
275err411 = ServantErr { errHTTPCode = 411
275err411 = ServantErr { errHTTPCode = 411
@@ -283,7 +283,7 @@ err411 = ServantErr { errHTTPCode = 411
283-- Example:
283-- Example:
284--
284--
285-- > failingHandler :: Handler ()
285-- > failingHandler :: Handler ()
286−-- > failingHandler = throwErr $ err412 { errBody = "Precondition fail: x < 42 && y > 57" }
286+-- > failingHandler = throwError $ err412 { errBody = "Precondition fail: x < 42 && y > 57" }
287--
287--
288err412 :: ServantErr
288err412 :: ServantErr
289err412 = ServantErr { errHTTPCode = 412
289err412 = ServantErr { errHTTPCode = 412
@@ -297,7 +297,7 @@ err412 = ServantErr { errHTTPCode = 412
297-- Example:
297-- Example:
298--
298--
299-- > failingHandler :: Handler ()
299-- > failingHandler :: Handler ()
300−-- > failingHandler = throwErr $ err413 { errBody = "Request exceeded 64k." }
300+-- > failingHandler = throwError $ err413 { errBody = "Request exceeded 64k." }
301--
301--
302err413 :: ServantErr
302err413 :: ServantErr
303err413 = ServantErr { errHTTPCode = 413
303err413 = ServantErr { errHTTPCode = 413
@@ -311,7 +311,7 @@ err413 = ServantErr { errHTTPCode = 413
311-- Example:
311-- Example:
312--
312--
313-- > failingHandler :: Handler ()
313-- > failingHandler :: Handler ()
314−-- > failingHandler = throwErr $ err414 { errBody = "Maximum length is 64." }
314+-- > failingHandler = throwError $ err414 { errBody = "Maximum length is 64." }
315--
315--
316err414 :: ServantErr
316err414 :: ServantErr
317err414 = ServantErr { errHTTPCode = 414
317err414 = ServantErr { errHTTPCode = 414
@@ -325,7 +325,7 @@ err414 = ServantErr { errHTTPCode = 414
325-- Example:
325-- Example:
326--
326--
327-- > failingHandler :: Handler ()
327-- > failingHandler :: Handler ()
328−-- > failingHandler = throwErr $ err415 { errBody = "Supported media types: gif, png" }
328+-- > failingHandler = throwError $ err415 { errBody = "Supported media types: gif, png" }
329--
329--
330err415 :: ServantErr
330err415 :: ServantErr
331err415 = ServantErr { errHTTPCode = 415
331err415 = ServantErr { errHTTPCode = 415
@@ -339,7 +339,7 @@ err415 = ServantErr { errHTTPCode = 415
339-- Example:
339-- Example:
340--
340--
341-- > failingHandler :: Handler ()
341-- > failingHandler :: Handler ()
342−-- > failingHandler = throwErr $ err416 { errBody = "Valid range is [0, 424242]." }
342+-- > failingHandler = throwError $ err416 { errBody = "Valid range is [0, 424242]." }
343--
343--
344err416 :: ServantErr
344err416 :: ServantErr
345err416 = ServantErr { errHTTPCode = 416
345err416 = ServantErr { errHTTPCode = 416
@@ -353,7 +353,7 @@ err416 = ServantErr { errHTTPCode = 416
353-- Example:
353-- Example:
354--
354--
355-- > failingHandler :: Handler ()
355-- > failingHandler :: Handler ()
356−-- > failingHandler = throwErr $ err417 { errBody = "I found a quux in the request. This isn't going to work." }
356+-- > failingHandler = throwError $ err417 { errBody = "I found a quux in the request. This isn't going to work." }
357--
357--
358err417 :: ServantErr
358err417 :: ServantErr
359err417 = ServantErr { errHTTPCode = 417
359err417 = ServantErr { errHTTPCode = 417
@@ -367,7 +367,7 @@ err417 = ServantErr { errHTTPCode = 417
367-- Example:
367-- Example:
368--
368--
369-- > failingHandler :: Handler ()
369-- > failingHandler :: Handler ()
370−-- > failingHandler = throwErr $ err500 { errBody = "Exception in module A.B.C:55. Have a great day!" }
370+-- > failingHandler = throwError $ err500 { errBody = "Exception in module A.B.C:55. Have a great day!" }
371--
371--
372err500 :: ServantErr
372err500 :: ServantErr
373err500 = ServantErr { errHTTPCode = 500
373err500 = ServantErr { errHTTPCode = 500
@@ -381,7 +381,7 @@ err500 = ServantErr { errHTTPCode = 500
381-- Example:
381-- Example:
382--
382--
383-- > failingHandler :: Handler ()
383-- > failingHandler :: Handler ()
384−-- > failingHandler = throwErr $ err501 { errBody = "/v1/foo is not supported with quux in the request." }
384+-- > failingHandler = throwError $ err501 { errBody = "/v1/foo is not supported with quux in the request." }
385--
385--
386err501 :: ServantErr
386err501 :: ServantErr
387err501 = ServantErr { errHTTPCode = 501
387err501 = ServantErr { errHTTPCode = 501
@@ -395,7 +395,7 @@ err501 = ServantErr { errHTTPCode = 501
395-- Example:
395-- Example:
396--
396--
397-- > failingHandler :: Handler ()
397-- > failingHandler :: Handler ()
398−-- > failingHandler = throwErr $ err502 { errBody = "Tried gateway foo, bar, and baz. None responded." }
398+-- > failingHandler = throwError $ err502 { errBody = "Tried gateway foo, bar, and baz. None responded." }
399--
399--
400err502 :: ServantErr
400err502 :: ServantErr
401err502 = ServantErr { errHTTPCode = 502
401err502 = ServantErr { errHTTPCode = 502
@@ -409,7 +409,7 @@ err502 = ServantErr { errHTTPCode = 502
409-- Example:
409-- Example:
410--
410--
411-- > failingHandler :: Handler ()
411-- > failingHandler :: Handler ()
412−-- > failingHandler = throwErr $ err503 { errBody = "We're rewriting in PHP." }
412+-- > failingHandler = throwError $ err503 { errBody = "We're rewriting in PHP." }
413--
413--
414err503 :: ServantErr
414err503 :: ServantErr
415err503 = ServantErr { errHTTPCode = 503
415err503 = ServantErr { errHTTPCode = 503
@@ -423,7 +423,7 @@ err503 = ServantErr { errHTTPCode = 503
423-- Example:
423-- Example:
424--
424--
425-- > failingHandler :: Handler ()
425-- > failingHandler :: Handler ()
426−-- > failingHandler = throwErr $ err504 { errBody = "Backend foobar did not respond in 5 seconds." }
426+-- > failingHandler = throwError $ err504 { errBody = "Backend foobar did not respond in 5 seconds." }
427--
427--
428err504 :: ServantErr
428err504 :: ServantErr
429err504 = ServantErr { errHTTPCode = 504
429err504 = ServantErr { errHTTPCode = 504
@@ -437,7 +437,7 @@ err504 = ServantErr { errHTTPCode = 504
437-- Example usage:
437-- Example usage:
438--
438--
439-- > failingHandler :: Handler ()
439-- > failingHandler :: Handler ()
440−-- > failingHandler = throwErr $ err505 { errBody = "I support HTTP/4.0 only." }
440+-- > failingHandler = throwError $ err505 { errBody = "I support HTTP/4.0 only." }
441--
441--
442err505 :: ServantErr
442err505 :: ServantErr
443err505 = ServantErr { errHTTPCode = 505
443err505 = ServantErr { errHTTPCode = 505