1
0
mirror of https://github.com/fafhrd91/actix-net synced 2025-08-27 02:34:48 +02:00

update utils; add NewTransform::map_init_err

This commit is contained in:
Nikolay Kim
2019-03-02 13:18:01 -08:00
parent d0b8b6940c
commit 668e4f9ac4
10 changed files with 127 additions and 23 deletions

View File

@@ -4,6 +4,7 @@ use std::sync::Arc;
use futures::{Future, Poll};
use crate::transform_map_err::{TransformMapErr, TransformMapErrNewTransform};
use crate::transform_map_init_err::TransformMapInitErr;
use crate::Service;
/// An asynchronous function for transforming service call result.
@@ -85,6 +86,16 @@ pub trait NewTransform<Service, Config = ()> {
{
TransformMapErrNewTransform::new(self, f)
}
/// Map this service's factory init error to a different error,
/// returning a new transform service factory.
fn map_init_err<F, E>(self, f: F) -> TransformMapInitErr<Self, Service, Config, F, E>
where
Self: Sized,
F: Fn(Self::InitError) -> E,
{
TransformMapInitErr::new(self, f)
}
}
impl<'a, T, S> Transform<S> for &'a mut T