From 3bea2ca49d24606920b3a81811379debc0668992 Mon Sep 17 00:00:00 2001 From: Scott McMurray Date: Sun, 17 Feb 2019 19:42:36 -0800 Subject: Use more impl header lifetime elision There are two big categories of changes in here - Removing lifetimes from common traits that can essentially never user a lifetime from an input (particularly `Drop` & `Debug`) - Forwarding impls that are only possible because the lifetime doesn't matter (like `impl Read for &mut R`) I omitted things that seemed like they could be more controversial, like the handful of iterators that have a `Item: 'static` despite the iterator having a lifetime or the `PartialEq` implementations where the flipped one cannot elide the lifetime. --- src/libstd/io/buffered.rs | 2 +- src/libstd/io/cursor.rs | 4 ++-- src/libstd/io/impls.rs | 14 +++++++------- src/libstd/io/mod.rs | 4 ++-- src/libstd/io/stdio.rs | 14 +++++++------- 5 files changed, 19 insertions(+), 19 deletions(-) (limited to 'src/libstd/io') diff --git a/src/libstd/io/buffered.rs b/src/libstd/io/buffered.rs index 056aa7c0c42..4380ab6de70 100644 --- a/src/libstd/io/buffered.rs +++ b/src/libstd/io/buffered.rs @@ -1174,7 +1174,7 @@ mod tests { // Issue #32085 struct FailFlushWriter<'a>(&'a mut Vec); - impl<'a> Write for FailFlushWriter<'a> { + impl Write for FailFlushWriter<'_> { fn write(&mut self, buf: &[u8]) -> io::Result { self.0.extend_from_slice(buf); Ok(buf.len()) diff --git a/src/libstd/io/cursor.rs b/src/libstd/io/cursor.rs index b205f788838..758d8568672 100644 --- a/src/libstd/io/cursor.rs +++ b/src/libstd/io/cursor.rs @@ -279,7 +279,7 @@ fn vec_write(pos_mut: &mut u64, vec: &mut Vec, buf: &[u8]) -> io::Result Write for Cursor<&'a mut [u8]> { +impl Write for Cursor<&mut [u8]> { #[inline] fn write(&mut self, buf: &[u8]) -> io::Result { slice_write(&mut self.pos, self.inner, buf) @@ -288,7 +288,7 @@ impl<'a> Write for Cursor<&'a mut [u8]> { } #[stable(feature = "cursor_mut_vec", since = "1.25.0")] -impl<'a> Write for Cursor<&'a mut Vec> { +impl Write for Cursor<&mut Vec> { fn write(&mut self, buf: &[u8]) -> io::Result { vec_write(&mut self.pos, self.inner, buf) } diff --git a/src/libstd/io/impls.rs b/src/libstd/io/impls.rs index ec75a87aec3..2577b284714 100644 --- a/src/libstd/io/impls.rs +++ b/src/libstd/io/impls.rs @@ -7,7 +7,7 @@ use mem; // Forwarding implementations #[stable(feature = "rust1", since = "1.0.0")] -impl<'a, R: Read + ?Sized> Read for &'a mut R { +impl Read for &mut R { #[inline] fn read(&mut self, buf: &mut [u8]) -> io::Result { (**self).read(buf) @@ -34,7 +34,7 @@ impl<'a, R: Read + ?Sized> Read for &'a mut R { } } #[stable(feature = "rust1", since = "1.0.0")] -impl<'a, W: Write + ?Sized> Write for &'a mut W { +impl Write for &mut W { #[inline] fn write(&mut self, buf: &[u8]) -> io::Result { (**self).write(buf) } @@ -52,12 +52,12 @@ impl<'a, W: Write + ?Sized> Write for &'a mut W { } } #[stable(feature = "rust1", since = "1.0.0")] -impl<'a, S: Seek + ?Sized> Seek for &'a mut S { +impl Seek for &mut S { #[inline] fn seek(&mut self, pos: SeekFrom) -> io::Result { (**self).seek(pos) } } #[stable(feature = "rust1", since = "1.0.0")] -impl<'a, B: BufRead + ?Sized> BufRead for &'a mut B { +impl BufRead for &mut B { #[inline] fn fill_buf(&mut self) -> io::Result<&[u8]> { (**self).fill_buf() } @@ -152,7 +152,7 @@ impl BufRead for Box { /// Note that reading updates the slice to point to the yet unread part. /// The slice will be empty when EOF is reached. #[stable(feature = "rust1", since = "1.0.0")] -impl<'a> Read for &'a [u8] { +impl Read for &[u8] { #[inline] fn read(&mut self, buf: &mut [u8]) -> io::Result { let amt = cmp::min(buf.len(), self.len()); @@ -207,7 +207,7 @@ impl<'a> Read for &'a [u8] { } #[stable(feature = "rust1", since = "1.0.0")] -impl<'a> BufRead for &'a [u8] { +impl BufRead for &[u8] { #[inline] fn fill_buf(&mut self) -> io::Result<&[u8]> { Ok(*self) } @@ -221,7 +221,7 @@ impl<'a> BufRead for &'a [u8] { /// Note that writing updates the slice to point to the yet unwritten part. /// The slice will be empty when it has been completely overwritten. #[stable(feature = "rust1", since = "1.0.0")] -impl<'a> Write for &'a mut [u8] { +impl Write for &mut [u8] { #[inline] fn write(&mut self, data: &[u8]) -> io::Result { let amt = cmp::min(data.len(), self.len()); diff --git a/src/libstd/io/mod.rs b/src/libstd/io/mod.rs index 28a6fbd48cf..599a40737d6 100644 --- a/src/libstd/io/mod.rs +++ b/src/libstd/io/mod.rs @@ -299,7 +299,7 @@ const DEFAULT_BUF_SIZE: usize = ::sys_common::io::DEFAULT_BUF_SIZE; struct Guard<'a> { buf: &'a mut Vec, len: usize } -impl<'a> Drop for Guard<'a> { +impl Drop for Guard<'_> { fn drop(&mut self) { unsafe { self.buf.set_len(self.len); } } @@ -1114,7 +1114,7 @@ pub trait Write { error: Result<()>, } - impl<'a, T: Write + ?Sized> fmt::Write for Adaptor<'a, T> { + impl fmt::Write for Adaptor<'_, T> { fn write_str(&mut self, s: &str) -> fmt::Result { match self.inner.write_all(s.as_bytes()) { Ok(()) => Ok(()), diff --git a/src/libstd/io/stdio.rs b/src/libstd/io/stdio.rs index 4068c0f9c7d..0324568e6fb 100644 --- a/src/libstd/io/stdio.rs +++ b/src/libstd/io/stdio.rs @@ -312,7 +312,7 @@ impl Read for Stdin { } #[stable(feature = "rust1", since = "1.0.0")] -impl<'a> Read for StdinLock<'a> { +impl Read for StdinLock<'_> { fn read(&mut self, buf: &mut [u8]) -> io::Result { self.inner.read(buf) } @@ -323,13 +323,13 @@ impl<'a> Read for StdinLock<'a> { } #[stable(feature = "rust1", since = "1.0.0")] -impl<'a> BufRead for StdinLock<'a> { +impl BufRead for StdinLock<'_> { fn fill_buf(&mut self) -> io::Result<&[u8]> { self.inner.fill_buf() } fn consume(&mut self, n: usize) { self.inner.consume(n) } } #[stable(feature = "std_debug", since = "1.16.0")] -impl<'a> fmt::Debug for StdinLock<'a> { +impl fmt::Debug for StdinLock<'_> { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { f.pad("StdinLock { .. }") } @@ -485,7 +485,7 @@ impl Write for Stdout { } } #[stable(feature = "rust1", since = "1.0.0")] -impl<'a> Write for StdoutLock<'a> { +impl Write for StdoutLock<'_> { fn write(&mut self, buf: &[u8]) -> io::Result { self.inner.borrow_mut().write(buf) } @@ -495,7 +495,7 @@ impl<'a> Write for StdoutLock<'a> { } #[stable(feature = "std_debug", since = "1.16.0")] -impl<'a> fmt::Debug for StdoutLock<'a> { +impl fmt::Debug for StdoutLock<'_> { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { f.pad("StdoutLock { .. }") } @@ -638,7 +638,7 @@ impl Write for Stderr { } } #[stable(feature = "rust1", since = "1.0.0")] -impl<'a> Write for StderrLock<'a> { +impl Write for StderrLock<'_> { fn write(&mut self, buf: &[u8]) -> io::Result { self.inner.borrow_mut().write(buf) } @@ -648,7 +648,7 @@ impl<'a> Write for StderrLock<'a> { } #[stable(feature = "std_debug", since = "1.16.0")] -impl<'a> fmt::Debug for StderrLock<'a> { +impl fmt::Debug for StderrLock<'_> { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { f.pad("StderrLock { .. }") } -- cgit 1.4.1-3-g733a5