Safe Haskell | None |
---|
- type Uri = ByteString
- type UriParts = [String]
- apiError :: MonadError (Reason e) m => Reason e -> m a
- newtype Router a = Router {}
- runRouter :: Method -> UriParts -> Router (RunnableHandler m) -> Either Reason_ (RunnableHandler m)
- route :: Method -> UriParts -> Api m -> Either Reason_ (RunnableHandler m)
- routeRoot :: Router m s -> Router (RunnableHandler m)
- routeMultiGet :: Router m s -> MaybeT Router (RunnableHandler m)
- routeRouter :: Router m s -> Router (RunnableHandler m)
- routeToplevel :: Resource m s sid mid aid -> [Some1 (Router s)] -> Maybe (Cardinality sid mid) -> MaybeT Router (RunnableHandler m)
- routeCreate :: Resource m s sid mid aid -> MaybeT Router (RunnableHandler m)
- routeStep :: Resource m s sid mid aid -> [Some1 (Router s)] -> Step sid mid aid -> Router (RunnableHandler m)
- routeNamed :: Resource m s sid mid aid -> [Some1 (Router s)] -> Endpoint sid mid aid -> Router (RunnableHandler m)
- routeUnnamed :: Resource m s sid mid aid -> [Some1 (Router s)] -> Cardinality (Id sid) (Id mid) -> Router (RunnableHandler m)
- routeGetter :: Getter sid -> Resource m s sid mid aid -> [Some1 (Router s)] -> Router (RunnableHandler m)
- multiPut :: Resource m s sid mid aid -> Id sid -> Router (RunnableHandler m)
- routeListGetter :: Monad m => Getter mid -> (mid -> ListHandler m) -> Router (RunnableHandler m)
- withSubresource :: sid -> Resource m s sid mid aid -> [Some1 (Router s)] -> Router (RunnableHandler m)
- routeSingle :: sid -> Resource m s sid mid aid -> Router (RunnableHandler m)
- routeName :: String -> Router ()
- routeListHandler :: Monad m => ListHandler m -> Router (RunnableHandler m)
- lookupRouter :: String -> [Some1 (Router s)] -> Maybe (Some1 (Router s))
- parseIdent :: MonadError (Reason e) m => Id id -> String -> m id
- splitUri :: Uri -> UriParts
- splitUriString :: String -> UriParts
- popSegment :: Router String
- withSegment :: Router a -> (String -> Router a) -> Router a
- noRestPath :: Router ()
- guardNullPath :: (MonadPlus m, MonadState UriParts m) => m ()
- hasMethod :: Method -> Router ()
- guardMethod :: (MonadPlus m, MonadReader Method m) => Method -> m ()
- mkListHandler :: Monad m => ListHandler m -> Maybe (Handler m)
- mkListAction :: Monad m => (Env h p i -> ErrorT (Reason e) m [a]) -> Env h (Range, p) i -> ErrorT (Reason e) m (List a)
- mkMultiPutHandler :: Monad m => Id id -> (id -> Run s m) -> Handler s -> Maybe (Handler m)
- mkMultiGetHandler :: forall m s. (Applicative m, Monad m) => Router m s -> Handler m
- runResource :: forall m s. (Applicative m, Monad m) => Router m s -> Resource -> m BodyPart
- fromMaybeT :: Monad m => m a -> MaybeT m a -> m a
Documentation
type Uri = ByteStringSource
apiError :: MonadError (Reason e) m => Reason e -> m aSource
runRouter :: Method -> UriParts -> Router (RunnableHandler m) -> Either Reason_ (RunnableHandler m)Source
routeRoot :: Router m s -> Router (RunnableHandler m)Source
routeMultiGet :: Router m s -> MaybeT Router (RunnableHandler m)Source
routeRouter :: Router m s -> Router (RunnableHandler m)Source
routeToplevel :: Resource m s sid mid aid -> [Some1 (Router s)] -> Maybe (Cardinality sid mid) -> MaybeT Router (RunnableHandler m)Source
routeCreate :: Resource m s sid mid aid -> MaybeT Router (RunnableHandler m)Source
routeStep :: Resource m s sid mid aid -> [Some1 (Router s)] -> Step sid mid aid -> Router (RunnableHandler m)Source
routeNamed :: Resource m s sid mid aid -> [Some1 (Router s)] -> Endpoint sid mid aid -> Router (RunnableHandler m)Source
routeUnnamed :: Resource m s sid mid aid -> [Some1 (Router s)] -> Cardinality (Id sid) (Id mid) -> Router (RunnableHandler m)Source
routeGetter :: Getter sid -> Resource m s sid mid aid -> [Some1 (Router s)] -> Router (RunnableHandler m)Source
routeListGetter :: Monad m => Getter mid -> (mid -> ListHandler m) -> Router (RunnableHandler m)Source
withSubresource :: sid -> Resource m s sid mid aid -> [Some1 (Router s)] -> Router (RunnableHandler m)Source
routeSingle :: sid -> Resource m s sid mid aid -> Router (RunnableHandler m)Source
routeListHandler :: Monad m => ListHandler m -> Router (RunnableHandler m)Source
parseIdent :: MonadError (Reason e) m => Id id -> String -> m idSource
noRestPath :: Router ()Source
guardNullPath :: (MonadPlus m, MonadState UriParts m) => m ()Source
guardMethod :: (MonadPlus m, MonadReader Method m) => Method -> m ()Source
mkListHandler :: Monad m => ListHandler m -> Maybe (Handler m)Source
mkListAction :: Monad m => (Env h p i -> ErrorT (Reason e) m [a]) -> Env h (Range, p) i -> ErrorT (Reason e) m (List a)Source
mkMultiGetHandler :: forall m s. (Applicative m, Monad m) => Router m s -> Handler mSource
runResource :: forall m s. (Applicative m, Monad m) => Router m s -> Resource -> m BodyPartSource
Utilities
fromMaybeT :: Monad m => m a -> MaybeT m a -> m aSource