Diffstat (limited to 'src/macros/build.rs')
| -rw-r--r-- | src/macros/build.rs | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/src/macros/build.rs b/src/macros/build.rs index 132a4f4..893f2a5 100644 --- a/src/macros/build.rs +++ b/src/macros/build.rs @@ -9,22 +9,22 @@ macro_rules! Build { #[allow(non_upper_case_globals, non_snake_case, non_camel_case_types)] const _: () = { // add a module here to seal fields. - impl<'ctx, M: 'ctx, E: effectful::environment::Environment> $crate::Build<'ctx, M, E> for $name + impl<'lt, 'ctx, M: 'ctx, E: effectful::environment::Environment> $crate::Build<'lt, 'ctx, M, E> for $name where effectful::bound::Dynamic<$name>: effectful::bound::DynBind<E>, - $($type: $crate::Build<'ctx, M, E>,)* + $($type: $crate::Build<'lt, 'ctx, M, E>,)* $(effectful::bound::Dynamic<$type>: effectful::bound::DynBind<E>,)* - $crate::build::builders::core::r#struct::StructBuilder<'ctx, __Info, M, E>: $crate::Builder<'ctx, E, Value = Self> + $crate::build::builders::core::r#struct::StructBuilder<'lt, 'ctx, __Info, M, E>: $crate::Builder<'lt, 'ctx, E, Value = Self> { - type Builder = $crate::build::builders::core::r#struct::StructBuilder<'ctx, __Info, M, E>; + type Builder = $crate::build::builders::core::r#struct::StructBuilder<'lt, 'ctx, __Info, M, E>; } #[derive(SendSync)] - $vis struct Builders<'ctx, M: 'ctx, E: effectful::environment::Environment> + $vis struct Builders<'lt, 'ctx, M: 'ctx, E: effectful::environment::Environment> where - $($type: $crate::Build<'ctx, M, E>),* + $($type: $crate::Build<'lt, 'ctx, M, E>),* { - $($field: <$type as $crate::Build<'ctx, M, E>>::Builder),* + $($field: <$type as $crate::Build<'lt, 'ctx, M, E>>::Builder),* } #[derive(Copy, Clone, Debug, SendSync)] @@ -41,11 +41,11 @@ macro_rules! Build { } #[derive(SendSync)] - $vis enum Error<'ctx, M: 'ctx, E: effectful::environment::Environment> + $vis enum Error<'lt, 'ctx, M: 'ctx, E: effectful::environment::Environment> where - $($type: $crate::Build<'ctx, M, E>),* + $($type: $crate::Build<'lt, 'ctx, M, E>),* { - $($field(<<$type as $crate::Build<'ctx, M, E>>::Builder as $crate::build::BuilderTypes<E>>::Error)),* + $($field(<<$type as $crate::Build<'lt, 'ctx, M, E>>::Builder as $crate::build::BuilderTypes<E>>::Error)),* } impl ::core::fmt::Display for Field { @@ -56,9 +56,9 @@ macro_rules! Build { } } - impl<'ctx, M: 'ctx, E: effectful::environment::Environment> ::core::fmt::Debug for Error<'ctx, M, E> + impl<'lt, 'ctx, M: 'ctx, E: effectful::environment::Environment> ::core::fmt::Debug for Error<'lt, 'ctx, M, E> where - $($type: $crate::Build<'ctx, M, E>),* + $($type: $crate::Build<'lt, 'ctx, M, E>),* { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.write_str(match self { @@ -67,9 +67,9 @@ macro_rules! Build { } } - impl<'ctx, M: 'ctx, E: effectful::environment::Environment> ::core::fmt::Display for Error<'ctx, M, E> + impl<'lt, 'ctx, M: 'ctx, E: effectful::environment::Environment> ::core::fmt::Display for Error<'lt, 'ctx, M, E> where - $($type: $crate::Build<'ctx, M, E>),* + $($type: $crate::Build<'lt, 'ctx, M, E>),* { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.write_str(match self { @@ -81,17 +81,17 @@ macro_rules! Build { #[derive(SendSync)] $vis struct __Info; - impl<'ctx, M: 'ctx, E: effectful::environment::Environment> $crate::build::builders::core::r#struct::StructTypeInfo<'ctx, M, E> for __Info + impl<'lt, 'ctx, M: 'ctx, E: effectful::environment::Environment> $crate::build::builders::core::r#struct::StructTypeInfo<'lt, 'ctx, M, E> for __Info where effectful::bound::Dynamic<$name>: effectful::bound::DynBind<E>, - $($type: $crate::Build<'ctx, M, E>,)* + $($type: $crate::Build<'lt, 'ctx, M, E>,)* $(effectful::bound::Dynamic<$type>: effectful::bound::DynBind<E>),* { - type Builders = Builders<'ctx, M, E>; + type Builders = Builders<'lt, 'ctx, M, E>; type FieldMarker = Field; type T = $name; - type Error = Error<'ctx, M, E>; - type Seed = ($(<<$type as $crate::Build<'ctx, M, E>>::Builder as $crate::build::BuilderTypes<E>>::Seed),*); + type Error = Error<'lt, 'ctx, M, E>; + type Seed = ($(<<$type as $crate::Build<'lt, 'ctx, M, E>>::Builder as $crate::build::BuilderTypes<E>>::Seed),*); type ValueT = $crate::any::OwnedStatic<effectful::bound::Dynamic<$name>>; const FIELD_COUNT: usize = { @@ -106,7 +106,7 @@ macro_rules! Build { use effectful::join; ::effectful::join!( - $(#[capture($field)] || <<$type as $crate::Build<'ctx, M, E>>::Builder as $crate::Builder::<E>>::from_seed($field),)* + $(#[capture($field)] || <<$type as $crate::Build<'lt, 'ctx, M, E>>::Builder as $crate::Builder::<E>>::from_seed($field),)* ).map((), |_, ($($field,)*)| { Builders { $($field),* @@ -127,7 +127,7 @@ macro_rules! Build { } = builders; ::effectful::try_join!( - $(#[capture($field)] || $field.build().map((), |_, x| x.map(|x| effectful::bound::Dynamic(<<$type as Build<'ctx, M, E>>::Builder as BuilderTypes<E>>::unwrap_output(x))).map_err(Error::$field)),)* + $(#[capture($field)] || $field.build().map((), |_, x| x.map(|x| effectful::bound::Dynamic(<<$type as Build<'lt, 'ctx, M, E>>::Builder as BuilderTypes<E>>::unwrap_output(x))).map_err(Error::$field)),)* ).map((), |_, result| match result { Ok(($(effectful::bound::Dynamic($field),)*)) => Ok(effectful::bound::Dynamic($name { $($field),* @@ -140,7 +140,7 @@ macro_rules! Build { fn as_visitor<'a>( marker: Self::FieldMarker, builders: &'a mut Self::Builders, - ) -> $crate::protocol::DynVisitor<'a, 'ctx, E> { + ) -> $crate::protocol::DynVisitor<'a, 'lt, 'ctx, E> { use $crate::protocol::AsVisitor; match marker { |