Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use hyper::{Body, Error}; // 0.12.27
- use hyper::body::Payload;
- use hyper::server::conn::AddrIncoming;
- use hyper::service::{MakeService, MakeServiceRef, Service};
- use futures::future::Future; // 0.1.26
- use std::net::SocketAddr;
- fn check_is_servable<S, B>(_: &S) where
- S: MakeServiceRef<AddrIncoming, ReqBody=Body, ResBody=B>,
- S::Error: Into<Box<::std::error::Error + Send + Sync>>,
- S::Service: 'static,
- B: Payload,
- {
- }
- pub fn bind_service<T, S, F>(addr: SocketAddr, make_service: T) -> Result<(), hyper::Error>
- where
- T: for<'a> MakeService<&'a AddrIncoming, ReqBody = Body, ResBody = Body, Error = Error, MakeError = Error, Service = S, Future = F> + MakeServiceRef<AddrIncoming> + 'static,
- S: Service<ReqBody = Body, ResBody = Body, Error = Error> + 'static,
- F: Future<Item=S, Error=Error> + Send,
- {
- check_is_servable(&make_service);
- Ok(())
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement