Diffstat (limited to 'src/walk/walkers/core/bool.rs')
| -rw-r--r-- | src/walk/walkers/core/bool.rs | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/walk/walkers/core/bool.rs b/src/walk/walkers/core/bool.rs index 03929e5..890db00 100644 --- a/src/walk/walkers/core/bool.rs +++ b/src/walk/walkers/core/bool.rs @@ -1,12 +1,15 @@ -use crate::{effect::Effect, Walk, WalkerTypes}; +use crate::{ + effect::{Effect, ErasedEffective}, + Walk, WalkerTypes, +}; use super::value::ValueWalker; impl<'ctx, M, E: Effect> Walk<'ctx, M, E> for bool { type Walker = ValueWalker<bool>; - fn into_walker(self) -> Self::Walker { - ValueWalker::new(self) + fn into_walker<'e>(self) -> ErasedEffective<'e, Self::Walker, E> { + E::ready(ValueWalker::new(self)) } } @@ -18,8 +21,8 @@ impl WalkerTypes for bool { impl<'ctx, M, E: Effect> Walk<'ctx, M, E> for &'ctx bool { type Walker = ValueWalker<bool>; - fn into_walker(self) -> Self::Walker { - ValueWalker::new(*self) + fn into_walker<'e>(self) -> ErasedEffective<'e, Self::Walker, E> { + E::ready(ValueWalker::new(*self)) } } |