Diffstat (limited to 'src/walk/walkers/core/key_value.rs')
-rw-r--r--src/walk/walkers/core/key_value.rs12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/walk/walkers/core/key_value.rs b/src/walk/walkers/core/key_value.rs
index e1b38ac..66e04ec 100644
--- a/src/walk/walkers/core/key_value.rs
+++ b/src/walk/walkers/core/key_value.rs
@@ -1,7 +1,6 @@
use effectful::{
effective::Effective,
- environment::{Environment, NativeForm},
- forward_send_sync,
+ environment::{Environment, NativeForm}, SendSync,
};
use crate::{
@@ -13,14 +12,13 @@ use crate::{
Flow,
};
+#[derive(SendSync)]
pub struct KeyValueWalker<T, K, V> {
key_walker: K,
value_walker: V,
_tag: T,
}
-forward_send_sync!({T, K, V} {} KeyValueWalker<T, K, V>);
-
impl<T, K, V> KeyValueWalker<T, K, V> {
#[inline(always)]
pub fn new(tag: T, key_walker: K, value_walker: V) -> Self {
@@ -32,7 +30,7 @@ impl<T, K, V> KeyValueWalker<T, K, V> {
}
}
-#[derive(Debug)]
+#[derive(Debug, SendSync)]
#[allow(unused)]
enum KeyValueErrorKind<K, V> {
Tag(TagError<Never>),
@@ -40,11 +38,9 @@ enum KeyValueErrorKind<K, V> {
Value(V),
}
-#[derive(Debug)]
+#[derive(Debug, SendSync)]
pub struct KeyValueError<K, V>(KeyValueErrorKind<K, V>);
-forward_send_sync!({K, V} {} KeyValueError<K, V>);
-
impl<'ctx, T, K, V, E> crate::Walker<'ctx, E> for KeyValueWalker<T, K, V>
where
E: Environment,