-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A minimum web dev DSL in Haskell -- -- A simple library for fast web prototyping in Haskell. @package miku @version 2016.3.16 module Network.Miku.Utils (-) :: (a -> b) -> a -> b infixr 0 - namespace :: ByteString -> Env -> [(ByteString, ByteString)] put_namespace :: ByteString -> [(ByteString, ByteString)] -> Env -> Env insert_last :: a -> [a] -> [a] update :: (MonadState a m, Functor m) => (a -> a) -> m () module Network.Miku.Type type AppReader = Env type AppState = Response type AppMonadT = ReaderT AppReader (StateT AppState IO) type AppMonad = AppMonadT () data MikuState MikuState :: [Middleware] -> [Middleware] -> [(ByteString, ByteString)] -> MikuState [_middlewares] :: MikuState -> [Middleware] [_router] :: MikuState -> [Middleware] [_mimes] :: MikuState -> [(ByteString, ByteString)] router :: Lens' MikuState [Middleware] mimes :: Lens' MikuState [(ByteString, ByteString)] middlewares :: Lens' MikuState [Middleware] type MikuMonadT a = State MikuState a type MikuMonad = MikuMonadT () instance GHC.Base.Monoid Network.Miku.Type.MikuState module Network.Miku.Config pre_installed_middlewares :: [Middleware] miku_captures :: ByteString module Network.Miku.Engine miku :: MikuMonad -> Application miku_middleware :: MikuMonad -> Middleware miku_router :: RequestMethod -> ByteString -> AppMonad -> Middleware parse_params :: ByteString -> ByteString -> Maybe (ByteString, [(ByteString, ByteString)]) module Network.Miku.DSL app :: Application -> AppMonad middleware :: Middleware -> MikuMonad get :: ByteString -> AppMonad -> MikuMonad put :: ByteString -> AppMonad -> MikuMonad post :: ByteString -> AppMonad -> MikuMonad delete :: ByteString -> AppMonad -> MikuMonad add_route :: RequestMethod -> ByteString -> AppMonad -> MikuMonad before :: (Env -> IO Env) -> MikuMonad after :: (Response -> IO Response) -> MikuMonad mime :: ByteString -> ByteString -> MikuMonad public :: Maybe ByteString -> [ByteString] -> MikuMonad text :: ByteString -> AppMonad html :: ByteString -> AppMonad json :: ByteString -> AppMonad captures :: AppMonadT [(ByteString, ByteString)] module Network.Miku