From 82e578b5b0ed6786dc4d077c1d288b137f73a540 Mon Sep 17 00:00:00 2001 From: Steven Fackler Date: Tue, 21 Apr 2020 17:11:27 -0400 Subject: [PATCH] Impl Layer for &Layer (#446) --- tower-layer/src/lib.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tower-layer/src/lib.rs b/tower-layer/src/lib.rs index f4f7394..51b780a 100644 --- a/tower-layer/src/lib.rs +++ b/tower-layer/src/lib.rs @@ -88,3 +88,14 @@ pub trait Layer { /// that has been decorated with the middleware. fn layer(&self, inner: S) -> Self::Service; } + +impl<'a, T, S> Layer for &'a T +where + T: ?Sized + Layer, +{ + type Service = T::Service; + + fn layer(&self, inner: S) -> Self::Service { + (**self).layer(inner) + } +}