Safe Haskell | None |
---|
Documentation
class AbstractRouter r whereSource
data RoutePath r :: [*] -> *Source
type RouteAction r :: [*] -> *Source
type RouteAppliedAction r Source
subcompCombine :: RoutePath r `[]` -> RoutePath r as -> RoutePath r asSource
emptyRegistry :: Registry rSource
rootPath :: RoutePath r `[]`Source
defRoute :: RoutePath r as -> RouteAction r as -> Registry r -> Registry rSource
matchRoute :: Registry r -> [Text] -> [(ParamMap, RouteAppliedAction r)]Source
AbstractRouter (SafeRouter m a) | |
AbstractRouter (TextRouter m a) |
type ParamMap = HashMap CaptureVar TextSource
newtype CaptureVar Source
CaptureVar | |
|
Eq CaptureVar | |
Show CaptureVar | |
Hashable CaptureVar |
newtype RegistryT r middleware reqTypes m a Source
RegistryT | |
|
Monad m => MonadWriter [middleware] (RegistryT r middleware reqTypes m) | |
Monad m => MonadState (RegistryState r reqTypes) (RegistryT r middleware reqTypes m) | |
Monad m => MonadReader (RoutePath r ([] *)) (RegistryT r middleware reqTypes m) | |
MonadTrans (RegistryT r middleware reqTypes) | |
Monad m => Monad (RegistryT r middleware reqTypes m) | |
Functor m => Functor (RegistryT r middleware reqTypes m) | |
(Monad m, Functor m) => Applicative (RegistryT r middleware reqTypes m) | |
MonadIO m => MonadIO (RegistryT r middleware reqTypes m) |
data RegistryState r reqTypes Source
RegistryState | |
|
Monad m => MonadState (RegistryState r reqTypes) (RegistryT r middleware reqTypes m) |
hookRoute :: (Monad m, AbstractRouter r, Eq reqTypes, Hashable reqTypes) => reqTypes -> RoutePath r as -> RouteAction r as -> RegistryT r middleware reqTypes m ()Source
middleware :: Monad m => middleware -> RegistryT r middleware reqTypes m ()Source
subcomponent :: (Monad m, AbstractRouter r) => RoutePath r `[]` -> RegistryT r middleware reqTypes m a -> RegistryT r middleware reqTypes m aSource
runRegistry :: (Monad m, AbstractRouter r, Hashable reqTypes, Eq reqTypes) => r -> RegistryT r middleware reqTypes m a -> m (a, reqTypes -> [Text] -> [(ParamMap, RouteAppliedAction r)], [middleware])Source