Skip to content

Commit 3c05882

Browse files
authored
Merge pull request #258 from H1rono/call-inline
♻️ `#[inline]`つけた
2 parents 7033c6c + 4cdd356 commit 3c05882

File tree

2 files changed

+26
-8
lines changed

2 files changed

+26
-8
lines changed

src/handler.rs

+5-4
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ impl<T> Service<T> for Sink {
4848
Poll::Ready(Ok(()))
4949
}
5050

51+
#[inline]
5152
fn call(&mut self, _request: T) -> Self::Future {
5253
futures::future::ready(Ok(()))
5354
}
@@ -79,9 +80,9 @@ where
7980
self.service.poll_ready(cx)
8081
}
8182

83+
#[inline]
8284
fn call(&mut self, request: Event) -> Self::Future {
83-
let request = (self.state.clone(), request);
84-
self.service.call(request)
85+
self.service.call((self.state.clone(), request))
8586
}
8687
}
8788

@@ -98,9 +99,9 @@ where
9899
self.service.poll_ready(cx)
99100
}
100101

102+
#[inline]
101103
fn call(&mut self, (_, request): (OState, Event)) -> Self::Future {
102-
let request = (self.state.clone(), request);
103-
self.service.call(request)
104+
self.service.call((self.state.clone(), request))
104105
}
105106
}
106107

src/macros.rs

+21-4
Original file line numberDiff line numberDiff line change
@@ -408,7 +408,11 @@ macro_rules! event_service_poll_ready {
408408

409409
#[cfg(feature = "tower")]
410410
macro_rules! event_service_call {
411-
( $v:ident ( $i:ident ) ) => {
411+
(
412+
$( #[$m:meta] )*
413+
$v:ident ( $i:ident )
414+
) => {
415+
$( #[$m] )*
412416
fn call(&mut self, req: $crate::Event) -> Self::Future {
413417
match req {
414418
$crate::Event::$v($i) => ::futures::future::Either::Left(
@@ -419,9 +423,11 @@ macro_rules! event_service_call {
419423
}
420424
};
421425
(
426+
$( #[$m:meta] )*
422427
$s:ident;
423428
$v:ident ( $i:ident ) => $e:expr
424429
) => {
430+
$( #[$m] )*
425431
fn call(&mut self, req: (State, $crate::handler::Event)) -> Self::Future {
426432
let ($s, event) = req;
427433
match event {
@@ -460,7 +466,10 @@ macro_rules! event_service {
460466
{
461467
$crate::macros::event_service_types! {}
462468
$crate::macros::event_service_poll_ready! {}
463-
$crate::macros::event_service_call! { [< $e:camel >] (e) }
469+
$crate::macros::event_service_call! {
470+
#[inline]
471+
[< $e:camel >] (e)
472+
}
464473
}
465474

466475
impl<State, Service, Fallback> ::tower::Service<(State, $crate::handler::Event)>
@@ -478,7 +487,11 @@ macro_rules! event_service {
478487
{
479488
$crate::macros::event_service_types! {}
480489
$crate::macros::event_service_poll_ready! {}
481-
$crate::macros::event_service_call! { state; [< $e:camel >] (e) => e }
490+
$crate::macros::event_service_call! {
491+
#[inline]
492+
state;
493+
[< $e:camel >] (e) => e
494+
}
482495
}
483496

484497
impl<State, Service, Fallback> ::tower::Service<(State, $crate::handler::Event)>
@@ -499,7 +512,11 @@ macro_rules! event_service {
499512
{
500513
$crate::macros::event_service_types! {}
501514
$crate::macros::event_service_poll_ready! {}
502-
$crate::macros::event_service_call! { state; [< $e:camel >] (e) => (state, e) }
515+
$crate::macros::event_service_call! {
516+
#[inline]
517+
state;
518+
[< $e:camel >] (e) => (state, e)
519+
}
503520
}
504521
}};
505522
}

0 commit comments

Comments
 (0)