rust_web_server/
lib.rs

1//! # rust-web-server
2//!
3//! `rust-web-server` provides the collection of utility functions and modules used to build Rust Web Server. Can be useful while developing HTTP related functionality.
4//!
5
6pub mod app;
7pub mod client_hint;
8pub mod cors;
9pub mod entry_point;
10pub mod ext;
11pub mod header;
12pub mod http;
13pub mod language;
14pub mod mime_type;
15pub mod range;
16pub mod request;
17pub mod response;
18pub mod server;
19pub mod symbol;
20pub mod thread_pool;
21pub mod log;
22pub mod body;
23pub mod json;
24pub mod null;
25pub mod url;
26pub mod core;
27pub mod application;
28pub mod controller;
29
30
31use crate::app::App;
32use crate::server::Server;
33use crate::application::Application;
34use crate::core::New;
35
36pub fn start(app: impl Application + New + Send + 'static + Copy) {
37
38    let new_server = Server::setup();
39    if new_server.is_err() {
40        eprintln!("{}", new_server.as_ref().err().unwrap());
41    }
42
43
44    let (listener, pool) = new_server.unwrap();
45
46    Server::run(listener, pool, app);
47}
48
49pub fn start_server() {
50
51    let new_server = Server::setup();
52    if new_server.is_err() {
53        eprintln!("{}", new_server.as_ref().err().unwrap());
54    }
55
56
57    let (listener, pool) = new_server.unwrap();
58    let app = App::new();
59
60
61    Server::run(listener, pool, app);
62}
63