#![doc(html_logo_url = "https://avatars0.githubusercontent.com/u/7853871?s=128", html_favicon_url = "https://avatars0.githubusercontent.com/u/7853871?s=256", html_root_url = "http://ironframework.io/core/iron")]
#![deny(missing_docs)]
#![deny(warnings)]
#![feature(macro_rules, phase, globs, unboxed_closures, slicing_syntax, default_type_params)]
#[phase(plugin, link)] extern crate log;
#[cfg(test)] extern crate test;
extern crate serialize;
extern crate hyper;
extern crate "typemap" as tmap;
extern crate plugin;
extern crate "modifier" as modfier;
extern crate error;
extern crate url;
pub use request::{Request, Url};
pub use response::Response;
pub use middleware::{BeforeMiddleware, AfterMiddleware, AroundMiddleware,
Handler, Chain, ChainBuilder};
pub use iron::Iron;
pub use typemap::TypeMap;
pub use hyper::header::common as headers;
pub use hyper::header::Headers;
pub use plugin::GetCached as Plugin;
pub use modifier::Set;
pub use error::{Error, ErrorRefExt};
pub use hyper::mime;
pub type IronError = Box<Error>;
pub type IronResult<T> = Result<T, IronError>;
pub mod prelude {
pub use {Set, Plugin, ErrorRefExt, Chain, Request,
Response, IronResult, IronError, Iron};
}
pub mod typemap {
pub use tmap::{TypeMap, Assoc};
}
pub mod modifier {
pub use modfier::{Set, Modifier};
}
pub mod status {
pub use hyper::status::StatusCode as Status;
pub use hyper::status::StatusCode::*;
}
pub mod method {
pub use hyper::method::Method;
pub use hyper::method::Method::*;
}
pub mod middleware;
pub mod errors;
pub mod response;
mod request;
mod iron;