perf(server): put inline on all wrapper methods
This commit is contained in:
		| @@ -176,6 +176,7 @@ impl<T, B> ServerProto<T> for Http<B> | |||||||
|     type Transport = __ProtoTransport<T, B>; |     type Transport = __ProtoTransport<T, B>; | ||||||
|     type BindTransport = __ProtoBindTransport<T, B>; |     type BindTransport = __ProtoBindTransport<T, B>; | ||||||
|  |  | ||||||
|  |     #[inline] | ||||||
|     fn bind_transport(&self, io: T) -> Self::BindTransport { |     fn bind_transport(&self, io: T) -> Self::BindTransport { | ||||||
|         let ka = if self.keep_alive { |         let ka = if self.keep_alive { | ||||||
|             http::KA::Busy |             http::KA::Busy | ||||||
| @@ -195,6 +196,7 @@ impl<T, B> Sink for __ProtoTransport<T, B> | |||||||
|     type SinkItem = Frame<__ProtoResponse, B, ::Error>; |     type SinkItem = Frame<__ProtoResponse, B, ::Error>; | ||||||
|     type SinkError = io::Error; |     type SinkError = io::Error; | ||||||
|  |  | ||||||
|  |     #[inline] | ||||||
|     fn start_send(&mut self, item: Self::SinkItem) |     fn start_send(&mut self, item: Self::SinkItem) | ||||||
|                   -> StartSend<Self::SinkItem, io::Error> { |                   -> StartSend<Self::SinkItem, io::Error> { | ||||||
|         let item = match item { |         let item = match item { | ||||||
| @@ -221,10 +223,12 @@ impl<T, B> Sink for __ProtoTransport<T, B> | |||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     #[inline] | ||||||
|     fn poll_complete(&mut self) -> Poll<(), io::Error> { |     fn poll_complete(&mut self) -> Poll<(), io::Error> { | ||||||
|         self.0.poll_complete() |         self.0.poll_complete() | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     #[inline] | ||||||
|     fn close(&mut self) -> Poll<(), io::Error> { |     fn close(&mut self) -> Poll<(), io::Error> { | ||||||
|         self.0.close() |         self.0.close() | ||||||
|     } |     } | ||||||
| @@ -237,6 +241,7 @@ impl<T, B> Stream for __ProtoTransport<T, B> | |||||||
|     type Item = Frame<__ProtoRequest, http::Chunk, ::Error>; |     type Item = Frame<__ProtoRequest, http::Chunk, ::Error>; | ||||||
|     type Error = io::Error; |     type Error = io::Error; | ||||||
|  |  | ||||||
|  |     #[inline] | ||||||
|     fn poll(&mut self) -> Poll<Option<Self::Item>, io::Error> { |     fn poll(&mut self) -> Poll<Option<Self::Item>, io::Error> { | ||||||
|         let item = match try_ready!(self.0.poll()) { |         let item = match try_ready!(self.0.poll()) { | ||||||
|             Some(item) => item, |             Some(item) => item, | ||||||
| @@ -257,10 +262,12 @@ impl<T, B> Transport for __ProtoTransport<T, B> | |||||||
|     where T: AsyncRead + AsyncWrite + 'static, |     where T: AsyncRead + AsyncWrite + 'static, | ||||||
|           B: AsRef<[u8]> + 'static, |           B: AsRef<[u8]> + 'static, | ||||||
| { | { | ||||||
|  |     #[inline] | ||||||
|     fn tick(&mut self) { |     fn tick(&mut self) { | ||||||
|         self.0.tick() |         self.0.tick() | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     #[inline] | ||||||
|     fn cancel(&mut self) -> io::Result<()> { |     fn cancel(&mut self) -> io::Result<()> { | ||||||
|         self.0.cancel() |         self.0.cancel() | ||||||
|     } |     } | ||||||
| @@ -272,12 +279,14 @@ impl<T, B> Future for __ProtoBindTransport<T, B> | |||||||
|     type Item = __ProtoTransport<T, B>; |     type Item = __ProtoTransport<T, B>; | ||||||
|     type Error = io::Error; |     type Error = io::Error; | ||||||
|  |  | ||||||
|  |     #[inline] | ||||||
|     fn poll(&mut self) -> Poll<__ProtoTransport<T, B>, io::Error> { |     fn poll(&mut self) -> Poll<__ProtoTransport<T, B>, io::Error> { | ||||||
|         self.inner.poll().map(|a| a.map(__ProtoTransport)) |         self.inner.poll().map(|a| a.map(__ProtoTransport)) | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
| impl From<Message<__ProtoRequest, http::TokioBody>> for Request { | impl From<Message<__ProtoRequest, http::TokioBody>> for Request { | ||||||
|  |     #[inline] | ||||||
|     fn from(message: Message<__ProtoRequest, http::TokioBody>) -> Request { |     fn from(message: Message<__ProtoRequest, http::TokioBody>) -> Request { | ||||||
|         let (head, body) = match message { |         let (head, body) = match message { | ||||||
|             Message::WithoutBody(head) => (head.0, http::Body::empty()), |             Message::WithoutBody(head) => (head.0, http::Body::empty()), | ||||||
| @@ -288,6 +297,7 @@ impl From<Message<__ProtoRequest, http::TokioBody>> for Request { | |||||||
| } | } | ||||||
|  |  | ||||||
| impl<B> Into<Message<__ProtoResponse, B>> for Response<B> { | impl<B> Into<Message<__ProtoResponse, B>> for Response<B> { | ||||||
|  |     #[inline] | ||||||
|     fn into(self) -> Message<__ProtoResponse, B> { |     fn into(self) -> Message<__ProtoResponse, B> { | ||||||
|         let (head, body) = response::split(self); |         let (head, body) = response::split(self); | ||||||
|         if let Some(body) = body { |         if let Some(body) = body { | ||||||
| @@ -315,6 +325,7 @@ impl<T, B> Service for HttpService<T> | |||||||
|     type Error = ::Error; |     type Error = ::Error; | ||||||
|     type Future = Map<T::Future, fn(Response<B>) -> Message<__ProtoResponse, B>>; |     type Future = Map<T::Future, fn(Response<B>) -> Message<__ProtoResponse, B>>; | ||||||
|  |  | ||||||
|  |     #[inline] | ||||||
|     fn call(&self, message: Self::Request) -> Self::Future { |     fn call(&self, message: Self::Request) -> Self::Future { | ||||||
|         let (head, body) = match message { |         let (head, body) = match message { | ||||||
|             Message::WithoutBody(head) => (head.0, http::Body::empty()), |             Message::WithoutBody(head) => (head.0, http::Body::empty()), | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user