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 AdHoc
pub 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 AdHoc
fn info(&self) -> Info
[src]
fn info(&self) -> Info
Returns an Info
structure containing the name
and Kind
of this fairing. The name
can be any arbitrary string. Kind
must be an or
d 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