diff --git a/src/rcore/point.rs b/src/rcore/point.rs index f6d37c2..6349a6d 100644 --- a/src/rcore/point.rs +++ b/src/rcore/point.rs @@ -26,7 +26,10 @@ impl<'a, Ctx: Context<'a>, A: MentionableBase<'a, Ctx>> Clone for Point<'a, Ctx, } } -impl<'a, Ctx: Context<'a>, A: Mentionable<'a, Ctx>> Point<'a, Ctx, A> { +impl<'a, Ctx: Context<'a>, A: MentionableBase<'a, Ctx>> Point<'a, Ctx, A> +where + A::Fctr: FactoryParse<'a, Ctx>, +{ /// See [`Origin::resolve`]. pub fn resolve(&self) -> Resolution<'a, Ctx, A> { self.origin.clone().resolve() diff --git a/src/rstd/collections/stack.rs b/src/rstd/collections/stack.rs index 2c6bb8c..eadb5f7 100644 --- a/src/rstd/collections/stack.rs +++ b/src/rstd/collections/stack.rs @@ -210,6 +210,7 @@ impl<'a, Ctx: Context<'a>, A: StackCompatible<'a, Ctx> + Mentionable<'a, Ctx> + ExtStackClone<'a, Ctx, A> for Stack<'a, Ctx, A> where StackNode<'a, Ctx, A>: Mentionable<'a, Ctx, _Fctr = StackNodeFactory>, + StackNodeFactory: FactoryParse<'a, Ctx>, { fn vec(self) -> StackVecWrapped<'a, Ctx, A> { Ctx::T::iterate_mut((vec![], self), |(mut vec, stack)| match stack {