mirror of
https://github.com/async-rs/async-std.git
synced 2025-02-06 12:45:32 +00:00
Move the blanket impl
outside of extension_trait
.
This commit is contained in:
parent
6b3667d1a4
commit
c626a69670
7 changed files with 14 additions and 4 deletions
|
@ -285,3 +285,6 @@ extension_trait! {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl<T: Future + ?Sized> FutureExt for T {}
|
||||
|
||||
|
|
|
@ -239,6 +239,8 @@ extension_trait! {
|
|||
}
|
||||
}
|
||||
|
||||
impl<T: BufRead + ?Sized> BufReadExt for T {}
|
||||
|
||||
pub fn read_until_internal<R: BufReadExt + ?Sized>(
|
||||
mut reader: Pin<&mut R>,
|
||||
cx: &mut Context<'_>,
|
||||
|
|
|
@ -372,10 +372,11 @@ extension_trait! {
|
|||
fn chain<R: Read>(self, next: R) -> Chain<Self, R> where Self: Sized {
|
||||
Chain { first: self, second: next, done_first: false }
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
impl<T: Read + ?Sized> ReadExt for T {}
|
||||
|
||||
/// Initializes a buffer if necessary.
|
||||
///
|
||||
/// Currently, a buffer is always initialized because `read_initializer`
|
||||
|
|
|
@ -48,3 +48,5 @@ extension_trait! {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl<T: Seek + ?Sized> SeekExt for T {}
|
||||
|
|
|
@ -185,3 +185,5 @@ extension_trait! {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl<T: Write + ?Sized> WriteExt for T {}
|
||||
|
|
|
@ -2307,3 +2307,6 @@ extension_trait! {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl<T: Stream + ?Sized> StreamExt for T {}
|
||||
|
||||
|
|
|
@ -265,9 +265,6 @@ macro_rules! extension_trait {
|
|||
pub trait $ext: $name {
|
||||
extension_trait!(@ext [$($body_ext)*] -> []);
|
||||
}
|
||||
|
||||
// Blanket implementation of the extension trait for any type implementing the base trait.
|
||||
impl<T: $name + ?Sized> $ext for T {}
|
||||
};
|
||||
|
||||
// Parse the return type in an extension method.
|
||||
|
|
Loading…
Reference in a new issue