Diffstat (limited to 'src/hkt.rs')
-rw-r--r--src/hkt.rs24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/hkt.rs b/src/hkt.rs
index 55e9856..e019bf9 100644
--- a/src/hkt.rs
+++ b/src/hkt.rs
@@ -28,20 +28,20 @@ pub struct Invariant<'a>(PhantomData<fn(&'a ()) -> &'a ()>);
#[repr(transparent)]
pub struct Marker<T: ?Sized>(PhantomData<fn() -> *const T>);
-impl<T> Copy for Marker<T> {}
-impl<T> Clone for Marker<T> {
+impl<T: ?Sized> Copy for Marker<T> {}
+impl<T: ?Sized> Clone for Marker<T> {
fn clone(&self) -> Self {
*self
}
}
-impl<T> core::fmt::Debug for Marker<T> {
+impl<T: ?Sized> core::fmt::Debug for Marker<T> {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
f.debug_tuple("Marker").finish()
}
}
-impl<T> Default for Marker<T> {
+impl<T: ?Sized> Default for Marker<T> {
fn default() -> Self {
Self(PhantomData)
}
@@ -70,7 +70,7 @@ macro_rules! higher_ranked_trait {
type T: RaiseForLt<$($lt,)+ $($($generic)*,)? B, HigherRanked = Self> + ?Sized + $($lower)*;
}
- pub trait RaiseForLt<$($lt,)+ $($($generic)*,)? B>
+ pub trait RaiseForLt<$($lt,)+ $($($generic)*,)? B>
where
$($($lower_where)*)?
$($($higher_where)*)?
@@ -80,35 +80,35 @@ macro_rules! higher_ranked_trait {
pub type Bound<$($lt,)+ $($($generic)*)?> = $bound;
- pub trait MemberType$(<$($generic)*>)?:
+ pub trait MemberType$(<$($generic)*>)?:
for<$($lt,)+> LowerForLt<$($lt,)+ $($($generic)*,)? Bound<$($lt,)+ $($($generic)*)?>> + $($higher)*
$(where $($higher_where)*)?
{}
- impl<$($($generic)*,)? __: ?Sized> MemberType$(<$($generic)*>)? for __
+ impl<$($($generic)*,)? __: ?Sized> MemberType$(<$($generic)*>)? for __
where
__: for<$($lt,)+> LowerForLt<$($lt,)+ $($($generic)*,)? Bound<$($lt,)+ $($($generic)*)?>> + $($higher)?
$($($higher_where)*)?
{}
- pub trait LowerType<$($lt,)+ $($($generic)*)?>:
+ pub trait LowerType<$($lt,)+ $($($generic)*)?>:
RaiseForLt<$($lt,)+ $($($generic)*,)? Bound<$($lt,)+ $($($generic)*)?>> + $($lower)*
where
$($($lower_where)*)?
$($($higher_where)*)?
{}
- impl<$($lt,)+ $($($generic)*,)? __: ?Sized> LowerType<$($lt,)+ $($($generic)*)?> for __
+ impl<$($lt,)+ $($($generic)*,)? __: ?Sized> LowerType<$($lt,)+ $($($generic)*)?> for __
where
__: RaiseForLt<$($lt,)+ $($($generic)*,)? Bound<$($lt,)+ $($($generic)*)?>> + $($lower)*,
$($($lower_where)*)?
$($($higher_where)*)?
{}
- pub type T<$($lt,)+ $($($generic)*,)? __> =
+ pub type T<$($lt,)+ $($($generic)*,)? __> =
<__ as LowerForLt<$($lt,)+ $($($generic)*,)? Bound<$($lt,)+ $($($generic)*)?>>>::T;
- pub type HigherRanked<$($lt,)+ $($($generic)*,)? __> =
+ pub type HigherRanked<$($lt,)+ $($($generic)*,)? __> =
<__ as RaiseForLt<$($lt,)+ $($($generic)*,)? Bound<$($lt,)+ $($($generic)*)?>>>::HigherRanked;
}
}
@@ -120,7 +120,7 @@ pub use higher_ranked_trait;
macro_rules! higher_ranked_type {
{
impl $higher_trait:ident {
- impl$([$($lower_generic:tt)*])? type T[$($lower_forward:tt)*] for $lower_higher:ty =
+ impl$([$($lower_generic:tt)*])? type T[$($lower_forward:tt)*] for $lower_higher:ty =
$lower:ty
$(where {$($lower_where:tt)*})?;