@@ -118,30 +118,37 @@ where
118
118
/// # Example
119
119
///
120
120
/// ```rust,no_run
121
- /// # #[cfg(feature = "runtime")] fn main() {
121
+ /// # #![feature(async_await)]
122
+ /// # #[cfg(feature = "runtime")]
123
+ /// # #[hyper::rt::main]
124
+ /// # async fn main() {
122
125
/// use std::net::TcpStream;
123
- /// use hyper::{Body, Request, Response, Server};
126
+ /// use hyper::{Body, Error, Request, Response, Server};
124
127
/// use hyper::rt::{self, Future};
125
128
/// use hyper::server::conn::AddrStream;
126
- /// use hyper::service::{make_service_fn, service_fn_ok };
129
+ /// use hyper::service::{make_service_fn, service_fn };
127
130
///
128
131
/// let addr = ([127, 0, 0, 1], 3000).into();
129
132
///
130
133
/// let make_svc = make_service_fn(|socket: &AddrStream| {
131
134
/// let remote_addr = socket.remote_addr();
132
- /// service_fn_ok(move |_: Request<Body>| {
133
- /// Response::new(Body::from(format!("Hello, {}", remote_addr)))
134
- /// })
135
+ /// async move {
136
+ /// Ok::<_, Error>(service_fn(move |_: Request<Body>| async move {
137
+ /// Ok::<_, Error>(
138
+ /// Response::new(Body::from(format!("Hello, {}!", remote_addr)))
139
+ /// )
140
+ /// }))
141
+ /// }
135
142
/// });
136
143
///
137
144
/// // Then bind and serve...
138
145
/// let server = Server::bind(&addr)
139
146
/// .serve(make_svc);
140
147
///
141
148
/// // Finally, spawn `server` onto an Executor...
142
- /// rt::run( server.map_err(|e| {
149
+ /// if let Err(e) = server.await {
143
150
/// eprintln!("server error: {}", e);
144
- /// }));
151
+ /// }
145
152
/// # }
146
153
/// # #[cfg(not(feature = "runtime"))] fn main() {}
147
154
/// ```
0 commit comments