@@ -7,24 +7,26 @@
7{-# LANGUAGE ScopedTypeVariables #-}
7{-# LANGUAGE ScopedTypeVariables #-}
8module Servant.Server.Internal where
8module Servant.Server.Internal where
10−import Control.Applicative
10+import Control.Applicative ((<$>))
11−import Control.Monad.Trans.Either
11+import Control.Monad.Trans.Either (EitherT, runEitherT)
12−import Data.Aeson
12+import Data.Aeson (ToJSON, FromJSON, encode, decode')
13import qualified Data.ByteString as B
13import qualified Data.ByteString as B
14import qualified Data.ByteString.Lazy as BL
14import qualified Data.ByteString.Lazy as BL
15−import Data.IORef
15+import Data.IORef (newIORef, readIORef, writeIORef)
16import Data.Maybe (catMaybes)
16import Data.Maybe (catMaybes)
17−import Data.Monoid
17+import Data.Monoid (Monoid, mempty, mappend)
18−import Data.Proxy
18+import Data.Proxy (Proxy(Proxy))
19−import Data.String
19+import Data.String (fromString)
20−import Data.String.Conversions
20+import Data.String.Conversions (cs, (<>))
21import Data.Text.Encoding (decodeUtf8)
21import Data.Text.Encoding (decodeUtf8)
22import Data.Text (Text)
22import Data.Text (Text)
23−import GHC.TypeLits
23+import GHC.TypeLits (KnownSymbol, symbolVal)
24import Network.HTTP.Types hiding (Header)
24import Network.HTTP.Types hiding (Header)
25−import Network.Wai
25+import Network.Wai (Response, Request, ResponseReceived, Application, pathInfo, requestBody,
26−import Servant.API
26+ strictRequestBody, lazyRequestBody, requestHeaders, requestMethod,
27+ rawQueryString, responseLBS)
28+import Servant.API (QueryParams, QueryParam, QueryFlag, ReqBody, Header, Capture, Get, Delete, Put, Post, Raw, (:>), (:<|>)(..))
27−import Servant.Common.Text
29+import Servant.Common.Text (FromText, fromText)
29data ReqBodyState = Uncalled
31data ReqBodyState = Uncalled
30 | Called !B.ByteString
32 | Called !B.ByteString