From 749268f438292416634e1cbebe240f3de9d8f61d Mon Sep 17 00:00:00 2001 From: timofey <tim@ongoteam.yaconnect.com> Date: Fri, 30 Jun 2023 22:14:08 +0000 Subject: [PATCH] move `InCtx for DeCtx` to `rcore` --- src/rcore/inctx.rs | 14 ++++++++++++++ src/rstd/inlining.rs | 14 -------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/rcore/inctx.rs b/src/rcore/inctx.rs index 464d6c9..3d2389e 100644 --- a/src/rcore/inctx.rs +++ b/src/rcore/inctx.rs @@ -17,3 +17,17 @@ pub trait InCtx<'a, Ctx: Context<'a>>: Inlining { fn iresolver(&self) -> Rc<dyn Resolver<'a, Ctx>>; } + +impl<'a: 'c, 'c, Ctx: Context<'a>> InCtx<'a, Ctx> for &'c mut dyn DeCtx<'a, Ctx> { + fn icnext_address<E>(self, err: impl FnOnce(&[u8]) -> E) -> Result<(Address, Self), E> { + let (addresses, deserialiser, _) = self.adr(); + match deserialiser.inext_address(addresses, err) { + Ok((address, _)) => Ok((address, self)), + Err(e) => Err(e), + } + } + + fn iresolver(&self) -> Rc<dyn Resolver<'a, Ctx>> { + self.resolver() + } +} diff --git a/src/rstd/inlining.rs b/src/rstd/inlining.rs index 4df4838..aaf1793 100644 --- a/src/rstd/inlining.rs +++ b/src/rstd/inlining.rs @@ -56,20 +56,6 @@ impl<'a: 'c, 'c, Ctx: Context<'a>> Inlining for &'c mut dyn DeCtx<'a, Ctx> { } } -impl<'a: 'c, 'c, Ctx: Context<'a>> InCtx<'a, Ctx> for &'c mut dyn DeCtx<'a, Ctx> { - fn icnext_address<E>(self, err: impl FnOnce(&[u8]) -> E) -> Result<(Address, Self), E> { - let (addresses, deserialiser, _) = self.adr(); - match deserialiser.inext_address(addresses, err) { - Ok((address, _)) => Ok((address, self)), - Err(e) => Err(e), - } - } - - fn iresolver(&self) -> Rc<dyn Resolver<'a, Ctx>> { - self.resolver() - } -} - pub type ResultDyn<A, I> = Result<(A, I), Vec<u8>>; pub trait InCtxDyn<'a: 'c, 'c, Ctx: Context<'a>>: 'c {