Diffstat (limited to 'src/walk/walkers/core/key_value.rs')
| -rw-r--r-- | src/walk/walkers/core/key_value.rs | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/src/walk/walkers/core/key_value.rs b/src/walk/walkers/core/key_value.rs index 1229375..71af08f 100644 --- a/src/walk/walkers/core/key_value.rs +++ b/src/walk/walkers/core/key_value.rs @@ -5,7 +5,7 @@ use crate::{ visitor::{tags, visit_tag, EffectiveVisitExt as _, TagConst, TagError, TagKind}, DynVisitor, }, - Flow, WalkerTypes, + Flow, }; pub struct KeyValueWalker<T, K, V> { @@ -36,16 +36,6 @@ enum KeyValueErrorKind<K, V> { #[derive(Debug)] pub struct KeyValueError<K, V>(KeyValueErrorKind<K, V>); -impl<T, K, V> WalkerTypes for KeyValueWalker<T, K, V> -where - K: WalkerTypes, - V: WalkerTypes, -{ - type Error = KeyValueError<K::Error, V::Error>; - - type Output = (); -} - impl<'ctx, T, K, V, E> crate::Walker<'ctx, E> for KeyValueWalker<T, K, V> where E: Effect, @@ -53,6 +43,10 @@ where K: crate::Walker<'ctx, E> + 'ctx, V: crate::Walker<'ctx, E> + 'ctx, { + type Error = KeyValueError<K::Error, V::Error>; + + type Output = (); + #[inline(always)] fn walk<'b: 'c, 'c>( self, |