AV
Size: a a a
AV
MK
AV
AV
AV
AV
Conflicting family instance declarations:
UnnestTo a = '[a] -- Defined at src/Hasql/Encoders.hs:99:8
UnnestTo (a, b) = Eval (UnnestTo a ++ UnnestTo b)
-- Defined at src/Hasql/Encoders.hs:107:8
AV
A
YS
AV
AV
AV
PP
Prelude> qsort [] = []
Prelude> qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++ qsort (filter (> x) xs)
Prelude> qsort [3,5,7,4,6]
*** Exception: <interactive>:24:1-72: Non-exhaustive patterns in function qsort
R
Prelude> qsort [] = []
Prelude> qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++ qsort (filter (> x) xs)
Prelude> qsort [3,5,7,4,6]
*** Exception: <interactive>:24:1-72: Non-exhaustive patterns in function qsort
qsort
, а не два случая одного определенияAV
AV
R
PP
YS
addHeaders ∷ HTTP.ResponseHeaders → WAI.Middleware
addHeaders hdrs app req respond = app req $ \response → do
let (st, headers, streamHandle) = WAI.responseToStream response
streamHandle $ \streamBody →
respond $ WAI.responseStream st (headers ⊕ hdrs) streamBody
А зачем тут сначала раскладывают ответ в стрим, а потом - собирают из стрима ио? .-.