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 {