aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--io.c29
1 files changed, 9 insertions, 20 deletions
diff --git a/io.c b/io.c
index a98bec8093..2cd1325b03 100644
--- a/io.c
+++ b/io.c
@@ -10684,30 +10684,19 @@ static VALUE argf_getpartial(int argc, VALUE *argv, VALUE argf, int nonblock);
* ARGF.readpartial(maxlen) -> string
* ARGF.readpartial(maxlen, outbuf) -> outbuf
*
- * Reads at most _maxlen_ bytes from the ARGF stream. It blocks only if
- * +ARGF+ has no data immediately available. If the optional _outbuf_
- * argument is present, it must reference a String, which will receive the
- * data.
+ * Reads at most _maxlen_ bytes from the ARGF stream.
+ *
+ * If the optional _outbuf_ argument is present,
+ * it must reference a String, which will receive the data.
* The <i>outbuf</i> will contain only the received data after the method call
* even if it is not empty at the beginning.
- * It raises <code>EOFError</code> on end of file.
- *
- * +readpartial+ is designed for streams such as pipes, sockets, and ttys. It
- * blocks only when no data is immediately available. This means that it
- * blocks only when following all conditions hold:
- *
- * * The byte buffer in the +IO+ object is empty.
- * * The content of the stream is empty.
- * * The stream has not reached EOF.
*
- * When +readpartial+ blocks, it waits for data or EOF. If some data is read,
- * +readpartial+ returns with the data. If EOF is reached, readpartial raises
- * an +EOFError+.
+ * It raises <code>EOFError</code> on end of ARGF stream.
+ * Since ARGF stream is a concatenation of multiple files,
+ * internally EOF is occur for each file.
+ * ARGF.readpartial returns empty strings for EOFs except the last one and
+ * raises <code>EOFError</code> for the last one.
*
- * When +readpartial+ doesn't block, it returns or raises immediately. If
- * the byte buffer is not empty, it returns the data in the buffer. Otherwise, if
- * the stream has some content, it returns the data in the stream. If the
- * stream reaches EOF an +EOFError+ is raised.
*/
static VALUE