glimr/routing/route

Types

pub type Route(context) {
  Route(
    method: http.Method,
    path: String,
    handler: fn(RouteRequest, context) -> response.Response(
      wisp.Body,
    ),
    middleware: List(
      fn(
        request.Request(wisp.Connection),
        context,
        fn(request.Request(wisp.Connection)) -> response.Response(
          wisp.Body,
        ),
      ) -> response.Response(wisp.Body),
    ),
    name: String,
  )
}

Constructors

pub type RouteGroup(context) {
  RouteGroup(
    middleware_group: kernel.MiddlewareGroup,
    routes: List(Route(context)),
  )
}

Constructors

pub type RouteHandler(context) =
  fn(RouteRequest, context) -> response.Response(wisp.Body)
pub type RouteRequest {
  RouteRequest(
    request: request.Request(wisp.Connection),
    params: dict.Dict(String, String),
  )
}

Constructors

Values

pub fn delete(
  path: String,
  handler: fn(RouteRequest, context) -> response.Response(
    wisp.Body,
  ),
) -> Route(context)
pub fn get(
  path: String,
  handler: fn(RouteRequest, context) -> response.Response(
    wisp.Body,
  ),
) -> Route(context)
pub fn get_param(
  req: RouteRequest,
  key: String,
) -> Result(String, Nil)
pub fn get_param_or(
  req: RouteRequest,
  key: String,
  default: String,
) -> String
pub fn group_middleware(
  middleware: List(
    fn(
      request.Request(wisp.Connection),
      context,
      fn(request.Request(wisp.Connection)) -> response.Response(
        wisp.Body,
      ),
    ) -> response.Response(wisp.Body),
  ),
  routes: List(List(Route(context))),
) -> List(Route(context))
pub fn group_name_prefix(
  name: String,
  routes: List(List(Route(context))),
) -> List(Route(context))
pub fn group_path_prefix(
  prefix: String,
  routes: List(List(Route(context))),
) -> List(Route(context))
pub fn middleware(
  route: Route(context),
  middleware: List(
    fn(
      request.Request(wisp.Connection),
      context,
      fn(request.Request(wisp.Connection)) -> response.Response(
        wisp.Body,
      ),
    ) -> response.Response(wisp.Body),
  ),
) -> Route(context)
pub fn name(
  route: Route(context),
  name: String,
) -> Route(context)
pub fn post(
  path: String,
  handler: fn(RouteRequest, context) -> response.Response(
    wisp.Body,
  ),
) -> Route(context)
pub fn put(
  path: String,
  handler: fn(RouteRequest, context) -> response.Response(
    wisp.Body,
  ),
) -> Route(context)
Search Document