Diffstat (limited to 'tests/common/walker.rs')
| -rw-r--r-- | tests/common/walker.rs | 60 |
1 files changed, 28 insertions, 32 deletions
diff --git a/tests/common/walker.rs b/tests/common/walker.rs index 449a102..41495a1 100644 --- a/tests/common/walker.rs +++ b/tests/common/walker.rs @@ -5,19 +5,15 @@ use effectful::{ forward_send_sync, }; use mockall::mock; -use treaty::{ - any::{indirect, AnyTrait, AnyTraitObject, TypeNameId}, - protocol::DynVisitor, - Builder, BuilderTypes, Walker, -}; +use treaty::{any::AnyTrait, build::BuilderTypes, protocol::DynVisitor, Builder, Walker}; mock! { pub Walker<Output, Error, E: Environment> { pub fn walk<'a, 'ctx>(self, visitor: DynVisitor<'a, 'ctx, E>) -> Result<Output, Error>; - pub fn traits(&self, id: TypeNameId) -> &Option<Box<dyn for<'ctx> AnyTrait<'ctx, E>>>; - - pub fn traits_mut(&mut self, id: TypeNameId) -> &mut Option<Box<dyn for<'ctx> AnyTrait<'ctx, E>>>; + // pub fn traits(&self, id: TypeNameId) -> &Option<Box<dyn for<'ctx> AnyTrait<'ctx, E>>>; + // + // pub fn traits_mut(&mut self, id: TypeNameId) -> &mut Option<Box<dyn for<'ctx> AnyTrait<'ctx, E>>>; } } @@ -41,30 +37,30 @@ impl<'ctx, Output: DynBind<E>, Error: DynBind<E> + core::fmt::Debug, E: Environm } } -impl<'ctx, Output: DynBind<E>, Error: DynBind<E>, E: Environment> AnyTrait<'ctx, E> +impl<'ctx, Output: DynBind<E>, Error: DynBind<E>, E: Environment> AnyTrait<'ctx> for MockWalker<Output, Error, E> { - fn upcast_to_id<'a>( - &'a self, - id: TypeNameId, - ) -> Option<AnyTraitObject<'a, 'ctx, indirect::Ref, E>> - where - 'ctx: 'a, - { - self.traits(id).as_ref().and_then(|t| t.upcast_to_id(id)) - } - - fn upcast_to_id_mut<'a>( - &'a mut self, - id: TypeNameId, - ) -> Option<AnyTraitObject<'a, 'ctx, indirect::Mut, E>> - where - 'ctx: 'a, - { - self.traits_mut(id) - .as_mut() - .and_then(|t| t.upcast_to_id_mut(id)) - } - - type Available = () where Self: Sized; + // fn upcast_to_id<'a>( + // &'a self, + // id: TypeNameId, + // ) -> Option<AnyTraitObject<'a, 'ctx, indirect::Ref, E>> + // where + // 'ctx: 'a, + // { + // self.traits(id).as_ref().and_then(|t| t.upcast_to_id(id)) + // } + // + // fn upcast_to_id_mut<'a>( + // &'a mut self, + // id: TypeNameId, + // ) -> Option<AnyTraitObject<'a, 'ctx, indirect::Mut, E>> + // where + // 'ctx: 'a, + // { + // self.traits_mut(id) + // .as_mut() + // .and_then(|t| t.upcast_to_id_mut(id)) + // } + // + // type Available = () where Self: Sized; } |