pub trait Router {
fn get(
&mut self,
uri: RequestPath,
callback: fn(_: &Box<Request>, _: &mut Box<Response>)
) -> &mut Route;
fn patch(
&mut self,
uri: RequestPath,
callback: fn(_: &Box<Request>, _: &mut Box<Response>)
) -> &mut Route;
fn post(
&mut self,
uri: RequestPath,
callback: fn(_: &Box<Request>, _: &mut Box<Response>)
) -> &mut Route;
fn put(
&mut self,
uri: RequestPath,
callback: fn(_: &Box<Request>, _: &mut Box<Response>)
) -> &mut Route;
fn delete(
&mut self,
uri: RequestPath,
callback: fn(_: &Box<Request>, _: &mut Box<Response>)
) -> &mut Route;
fn options(
&mut self,
uri: RequestPath,
callback: fn(_: &Box<Request>, _: &mut Box<Response>)
) -> &mut Route;
fn other(
&mut self,
method: &str,
uri: RequestPath,
callback: fn(_: &Box<Request>, _: &mut Box<Response>)
) -> &mut Route;
fn all(
&mut self,
uri: RequestPath,
callback: fn(_: &Box<Request>, _: &mut Box<Response>)
) -> &mut Route;
}