summaryrefslogtreecommitdiffstats
path: root/library/std/src/io/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'library/std/src/io/mod.rs')
-rw-r--r--library/std/src/io/mod.rs13
1 files changed, 7 insertions, 6 deletions
diff --git a/library/std/src/io/mod.rs b/library/std/src/io/mod.rs
index 8a007d095..71d91f213 100644
--- a/library/std/src/io/mod.rs
+++ b/library/std/src/io/mod.rs
@@ -1416,17 +1416,18 @@ pub trait Write {
///
/// This function will attempt to write the entire contents of `buf`, but
/// the entire write might not succeed, or the write may also generate an
- /// error. A call to `write` represents *at most one* attempt to write to
+ /// error. Typically, a call to `write` represents one attempt to write to
/// any wrapped object.
///
/// Calls to `write` are not guaranteed to block waiting for data to be
/// written, and a write which would otherwise block can be indicated through
/// an [`Err`] variant.
///
- /// If the return value is [`Ok(n)`] then it must be guaranteed that
- /// `n <= buf.len()`. A return value of `0` typically means that the
- /// underlying object is no longer able to accept bytes and will likely not
- /// be able to in the future as well, or that the buffer provided is empty.
+ /// If this method consumed `n > 0` bytes of `buf` it must return [`Ok(n)`].
+ /// If the return value is `Ok(n)` then `n` must satisfy `n <= buf.len()`.
+ /// A return value of `Ok(0)` typically means that the underlying object is
+ /// no longer able to accept bytes and will likely not be able to in the
+ /// future as well, or that the buffer provided is empty.
///
/// # Errors
///
@@ -2754,7 +2755,7 @@ trait SizeHint {
}
}
-impl<T> SizeHint for T {
+impl<T: ?Sized> SizeHint for T {
#[inline]
default fn lower_bound(&self) -> usize {
0