ioc
pub struct Read<Svc>(_);
impl<'a, Svc, Key, Base: ?Sized> InvocationMethod<'a, Key, Base> for Read<Svc> where Svc: ServiceReflect, Key: Borrow<Svc::Key> + Debug + Ord, Base: Downcast<Svc>
type Args = ()
type Ret = ServiceReadGuard<'a, Svc, Base>
type Error = LockError<&'static Svc::Key>
fn invoke(services: &'a BTreeMap<Key, RwLock<Box<Base>>>, _: Self::Args) -> Result<Self::Ret, Self::Error>