Enum rocket::fairing::AdHoc [−][src]
pub enum AdHoc {
// some variants omitted
}A ad-hoc fairing that can be created from a function or closure.
This enum can be used to create a fairing from a simple function or closure
without creating a new structure or implementing Fairing directly.
Usage
Use the on_attach, on_launch,
on_request, or on_response
constructors to create an AdHoc structure from a function or closure.
Then, simply attach the structure to the Rocket instance.
Example
The following snippet creates a Rocket instance with two ad-hoc fairings.
The first, a launch fairing, simply prints a message indicating that the
application is about to the launch. The second, a request fairing, rewrites
the method of all requests to be PUT.
use rocket::fairing::AdHoc; use rocket::http::Method; rocket::ignite() .attach(AdHoc::on_launch(|_| { println!("Rocket is about to launch! Exciting! Here we go..."); })) .attach(AdHoc::on_request(|req, _| { req.set_method(Method::Put); }));
Methods
impl AdHoc[src]
impl AdHocpub fn on_attach<F>(f: F) -> AdHoc where
F: Fn(Rocket) -> Result<Rocket, Rocket> + Send + Sync + 'static, [src]
pub fn on_attach<F>(f: F) -> AdHoc where
F: Fn(Rocket) -> Result<Rocket, Rocket> + Send + Sync + 'static, Constructs an AdHoc attach fairing. The function f will be called by
Rocket when this fairing is attached.
Example
use rocket::fairing::AdHoc; // The no-op attach fairing. let fairing = AdHoc::on_attach(|rocket| Ok(rocket));
pub fn on_launch<F>(f: F) -> AdHoc where
F: Fn(&Rocket) + Send + Sync + 'static, [src]
pub fn on_launch<F>(f: F) -> AdHoc where
F: Fn(&Rocket) + Send + Sync + 'static, Constructs an AdHoc launch fairing. The function f will be called by
Rocket just prior to launching.
Example
use rocket::fairing::AdHoc; // A fairing that prints a message just before launching. let fairing = AdHoc::on_launch(|rocket| { println!("Launching in T-3..2..1.."); });
pub fn on_request<F>(f: F) -> AdHoc where
F: Fn(&mut Request, &Data) + Send + Sync + 'static, [src]
pub fn on_request<F>(f: F) -> AdHoc where
F: Fn(&mut Request, &Data) + Send + Sync + 'static, Constructs an AdHoc request fairing. The function f will be called
by Rocket when a new request is received.
Example
use rocket::fairing::AdHoc; // The no-op request fairing. let fairing = AdHoc::on_request(|req, data| { // do something with the request and data... });
pub fn on_response<F>(f: F) -> AdHoc where
F: Fn(&Request, &mut Response) + Send + Sync + 'static, [src]
pub fn on_response<F>(f: F) -> AdHoc where
F: Fn(&Request, &mut Response) + Send + Sync + 'static, Constructs an AdHoc response fairing. The function f will be called
by Rocket when a response is ready to be sent.
Example
use rocket::fairing::AdHoc; // The no-op response fairing. let fairing = AdHoc::on_response(|req, resp| { // do something with the request and pending response... });
Trait Implementations
impl Fairing for AdHoc[src]
impl Fairing for AdHocfn info(&self) -> Info[src]
fn info(&self) -> InfoReturns an Info structure containing the name and Kind of this fairing. The name can be any arbitrary string. Kind must be an ord set of Kind variants. Read more
fn on_attach(&self, rocket: Rocket) -> Result<Rocket, Rocket>[src]
fn on_attach(&self, rocket: Rocket) -> Result<Rocket, Rocket>The attach callback. Returns Ok if launch should proceed and Err if launch should be aborted. Read more
fn on_launch(&self, rocket: &Rocket)[src]
fn on_launch(&self, rocket: &Rocket)The launch callback. Read more
fn on_request(&self, request: &mut Request, data: &Data)[src]
fn on_request(&self, request: &mut Request, data: &Data)The request callback. Read more
fn on_response(&self, request: &Request, response: &mut Response)[src]
fn on_response(&self, request: &Request, response: &mut Response)The response callback. Read more