Safe Haskell | None |
---|---|
Language | Haskell2010 |
- module Web.Routes.Nested.FileExtListener
- module Web.Routes.Nested.VerbListener
- module Web.Routes.Nested.Types
- newtype HandlerT z x m a = HandlerT {
- runHandler :: WriterT (RUPTrie Text x, RUPTrie Text x) m a
- type ActionT z m a = VerbListenerT z (FileExtListenerT Response m a) m a
- handle :: (Monad m, Functor m, cleanxs ~ OnlyJusts xs, HasResult childType (ActionT z m ()), ExpectArity cleanxs childType, Singleton (UrlChunks xs) childType (RUPTrie Text result), Extrude (UrlChunks xs) (RUPTrie Text childType) (RUPTrie Text result), ArityMinusTypeList childType cleanxs ~ result, childType ~ TypeListToArity cleanxs result) => UrlChunks xs -> Maybe childType -> Maybe (HandlerT z childType m ()) -> HandlerT z result m ()
- parent :: (Monad m, Functor m, cleanxs ~ OnlyJusts xs, Singleton (UrlChunks xs) childType (RUPTrie Text result), Extrude (UrlChunks xs) (RUPTrie Text childType) (RUPTrie Text result), ArityMinusTypeList childType cleanxs ~ result, childType ~ TypeListToArity cleanxs result) => UrlChunks xs -> HandlerT z childType m () -> HandlerT z result m ()
- notFound :: (Monad m, Functor m, cleanxs ~ OnlyJusts xs, HasResult childType (ActionT z m ()), ExpectArity cleanxs childType, Singleton (UrlChunks xs) childType (RUPTrie Text result), Extrude (UrlChunks xs) (RUPTrie Text childType) (RUPTrie Text result), ArityMinusTypeList childType cleanxs ~ result, childType ~ TypeListToArity cleanxs result) => UrlChunks xs -> Maybe childType -> Maybe (HandlerT z childType m ()) -> HandlerT z result m ()
- route :: (Functor m, Monad m, MonadIO m) => HandlerT z (ActionT z m ()) m a -> Request -> (Response -> IO ResponseReceived) -> m ResponseReceived
Documentation
module Web.Routes.Nested.Types
newtype HandlerT z x m a Source
HandlerT | |
|
type ActionT z m a = VerbListenerT z (FileExtListenerT Response m a) m a Source
:: (Monad m, Functor m, cleanxs ~ OnlyJusts xs, HasResult childType (ActionT z m ()), ExpectArity cleanxs childType, Singleton (UrlChunks xs) childType (RUPTrie Text result), Extrude (UrlChunks xs) (RUPTrie Text childType) (RUPTrie Text result), ArityMinusTypeList childType cleanxs ~ result, childType ~ TypeListToArity cleanxs result) | |
=> UrlChunks xs | Path to match against |
-> Maybe childType | Possibly a function, ending in |
-> Maybe (HandlerT z childType m ()) | Potential child routes |
-> HandlerT z result m () |
For routes ending with a literal.
parent :: (Monad m, Functor m, cleanxs ~ OnlyJusts xs, Singleton (UrlChunks xs) childType (RUPTrie Text result), Extrude (UrlChunks xs) (RUPTrie Text childType) (RUPTrie Text result), ArityMinusTypeList childType cleanxs ~ result, childType ~ TypeListToArity cleanxs result) => UrlChunks xs -> HandlerT z childType m () -> HandlerT z result m () Source
notFound :: (Monad m, Functor m, cleanxs ~ OnlyJusts xs, HasResult childType (ActionT z m ()), ExpectArity cleanxs childType, Singleton (UrlChunks xs) childType (RUPTrie Text result), Extrude (UrlChunks xs) (RUPTrie Text childType) (RUPTrie Text result), ArityMinusTypeList childType cleanxs ~ result, childType ~ TypeListToArity cleanxs result) => UrlChunks xs -> Maybe childType -> Maybe (HandlerT z childType m ()) -> HandlerT z result m () Source