From 05fc7faacb7c33eaad6614f62a7d560b0d2660a5 Mon Sep 17 00:00:00 2001 From: Elinvynia <59487684+Elinvynia@users.noreply.github.com> Date: Sat, 9 May 2020 01:17:20 +0200 Subject: [PATCH] Better documentation for io::Read::read() return value --- src/libstd/io/mod.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/libstd/io/mod.rs b/src/libstd/io/mod.rs index 36c6aa620d5..ebe6d09023f 100644 --- a/src/libstd/io/mod.rs +++ b/src/libstd/io/mod.rs @@ -517,6 +517,11 @@ pub trait Read { /// reader will *always* no longer be able to produce bytes. /// 2. The buffer specified was 0 bytes in length. /// + /// It is not an error if the returned value `n` is smaller than the buffer size, + /// even when the reader is not at the end of the stream yet. + /// This may happen for example because fewer bytes are actually available right now + /// (e. g. being close to end-of-file) or because read() was interrupted by a signal. + /// /// No guarantees are provided about the contents of `buf` when this /// function is called, implementations cannot rely on any property of the /// contents of `buf` being true. It is recommended that *implementations*