Diffstat (limited to 'src/build/builders/core/bool.rs')
-rw-r--r--src/build/builders/core/bool.rs20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/build/builders/core/bool.rs b/src/build/builders/core/bool.rs
index b09e4cb..4f8f2f0 100644
--- a/src/build/builders/core/bool.rs
+++ b/src/build/builders/core/bool.rs
@@ -1,9 +1,25 @@
use super::value::{Cloneable, ValueBuilder};
-use effectful::environment::Environment;
+use effectful::environment::{Environment, DynBind};
+use effectful::bound::{Dynamic, IsSync};
+use crate::any::{OwnedStatic, BorrowedStatic, TempBorrowedStatic, BorrowedMutStatic, TempBorrowedMutStatic};
macro_rules! value_builder {
[$($ty:ty),*] => {
- $(impl<'ctx, M, E: Environment> crate::Build<'ctx, M, E> for $ty {
+ $(impl<'ctx, M, E: Environment> crate::Build<'ctx, M, E> for $ty
+ where
+ Dynamic<Self>: DynBind<E>,
+ for<'a> Dynamic<&'a Self>: DynBind<E>,
+ Dynamic<OwnedStatic<Self>>: DynBind<E>,
+ for<'a> Dynamic<&'a OwnedStatic<Self>>: DynBind<E>,
+ Dynamic<BorrowedStatic<'ctx, Self>>: DynBind<E>,
+ for<'a, 'b> Dynamic<&'a BorrowedStatic<'b, Self>>: DynBind<E>,
+ for<'a> Dynamic<TempBorrowedStatic<'a, Self>>: DynBind<E>,
+ for<'a> Dynamic<&'a TempBorrowedStatic<'a, Self>>: DynBind<E>,
+ Dynamic<BorrowedMutStatic<'ctx, Self>>: DynBind<E>,
+ for<'a, 'b> Dynamic<&'a BorrowedMutStatic<'b, Self>>: DynBind<E>,
+ for<'a> Dynamic<TempBorrowedMutStatic<'a, Self>>: DynBind<E>,
+ for<'a> Dynamic<&'a TempBorrowedMutStatic<'a, Self>>: DynBind<E>,
+ {
type Builder = ValueBuilder<$ty, Cloneable, E>;
})*
};