Diffstat (limited to 'src/protocol/walker/hint.rs')
| -rw-r--r-- | src/protocol/walker/hint.rs | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/protocol/walker/hint.rs b/src/protocol/walker/hint.rs index 85184de..e7d41c6 100644 --- a/src/protocol/walker/hint.rs +++ b/src/protocol/walker/hint.rs @@ -5,7 +5,7 @@ //! to the walker about what it is expecting. use crate::{ - any::{MaybeSized, TypeName}, + any::{TypeName, WithContextLt}, bijective_higher_ranked_type, effect::{Effect, Future}, hkt::AnySend, @@ -48,12 +48,12 @@ pub trait Hint<'ctx, Protocol: ?Sized + HintMeta<'ctx>, E: Effect<'ctx>> { } bijective_higher_ranked_type! { - pub type DynHint['ctx][Protocol, E]: MaybeSized['ctx][] + pub type DynHint['ctx][Protocol, E]: WithContextLt['ctx][] for<'a> (dyn Hint<'ctx, Protocol, E> + Send + 'a) where { E: Effect<'ctx>, - Protocol: ?Sized + MaybeSized::Trait<'ctx> + 'ctx, + Protocol: ?Sized + WithContextLt::MemberType<'ctx> + 'ctx, } } @@ -85,7 +85,7 @@ mod test { struct Y; bijective_higher_ranked_type! { - type DynY['ctx][]: MaybeSized['ctx][] for<'a> (Y) + type DynY['ctx][]: WithContextLt['ctx][] for<'a> (Y) } bijective_higher_ranked_type! { @@ -121,9 +121,10 @@ mod test { let mut z = 42; let mut x = X(&mut z); - let y: &mut MaybeSized::T<'_, '_, DynHint<'_, DynY<'_>, Blocking>> = &mut x; + let y: &mut WithContextLt::T<'_, '_, DynHint<'_, DynY<'_>, Blocking>> = &mut x; - fn id<'a, 'ctx, T: ?Sized + TypeName::Member<'ctx>>(_x: &MaybeSized::T<'a, 'ctx, T>) {} + fn id<'a, 'ctx, T: ?Sized + TypeName::LowerType<'ctx>>(_x: &WithContextLt::T<'a, 'ctx, T>) { + } id::<DynHint<'_, DynY<'_>, Blocking>>(y); let x = Spin::block_on(y.known(&())); |