Diffstat (limited to 'src/build/builders/core/value.rs')
-rw-r--r--src/build/builders/core/value.rs9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/build/builders/core/value.rs b/src/build/builders/core/value.rs
index cd25bdc..1109b51 100644
--- a/src/build/builders/core/value.rs
+++ b/src/build/builders/core/value.rs
@@ -4,8 +4,7 @@ use effectful::{
bound::IsSync,
effective::Effective,
environment::{DynBind, Environment, NativeForm},
- forward_send_sync,
- higher_ranked::Mut,
+ higher_ranked::Mut, SendSync,
};
use crate::{
@@ -26,11 +25,10 @@ use crate::{
Flow,
};
+#[derive(SendSync)]
#[non_exhaustive]
pub struct ValueError<T>(Marker<T>);
-forward_send_sync!({} {} {T} ValueError<T>);
-
impl<T> ::core::fmt::Debug for ValueError<T> {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
write!(f, "missing value of type `{}`", core::any::type_name::<T>())
@@ -53,13 +51,12 @@ pub enum NotCloneable {}
#[doc = crate::doc_macro::mermaid!("value.mmd", 100)]
///
/// After
+#[derive(SendSync)]
pub struct ValueBuilder<T, Clone, E> {
value: Option<T>,
_marker: Marker<(E, Clone)>,
}
-forward_send_sync!({T} {} {Clone, E} ValueBuilder<T, Clone, E>);
-
impl<T, Clone, E: Environment> crate::BuilderTypes<E> for ValueBuilder<T, Clone, E>
where
T: DynBind<E>,