#![feature(proc_macro_hygiene, decl_macro)] extern crate chrono; extern crate crypto; #[macro_use] extern crate diesel; extern crate dotenv; extern crate htmlescape; extern crate r2d2; extern crate r2d2_diesel; #[macro_use] extern crate rocket; extern crate rocket_contrib; #[macro_use] extern crate serde_derive; extern crate syntect; use dotenv::dotenv; use rocket_contrib::templates::Template; mod connection; mod routes; mod schema; mod snippet; use crate::routes::static_rocket_catch_info_for_bad_request; use crate::routes::static_rocket_catch_info_for_not_found; use crate::routes::static_rocket_route_info_for_create_snippet; use crate::routes::static_rocket_route_info_for_index; use crate::routes::static_rocket_route_info_for_show_raw_snippet; use crate::routes::static_rocket_route_info_for_show_snippet; fn main() { dotenv().ok(); rocket::ignite() .attach(Template::fairing()) .manage(connection::init_pool()) .mount( "/", routes![index, show_snippet, show_raw_snippet, create_snippet], ) .register(catchers![bad_request, not_found]) .launch(); }