Commit 2f8e5a5f authored by Rob Pike's avatar Rob Pike

io/ioutil: document EOF behavior in ReadFile and ReadAll

Fixes #2862.

R=golang-dev, n13m3y3r, iant
CC=golang-dev
https://golang.org/cl/5646048
parent c5de9b77
...@@ -34,11 +34,17 @@ func readAll(r io.Reader, capacity int64) (b []byte, err error) { ...@@ -34,11 +34,17 @@ func readAll(r io.Reader, capacity int64) (b []byte, err error) {
} }
// ReadAll reads from r until an error or EOF and returns the data it read. // ReadAll reads from r until an error or EOF and returns the data it read.
// A successful call returns err == nil, not err == EOF. Because ReadAll is
// defined to read from src until EOF, it does not treat an EOF from Read
// as an error to be reported.
func ReadAll(r io.Reader) ([]byte, error) { func ReadAll(r io.Reader) ([]byte, error) {
return readAll(r, bytes.MinRead) return readAll(r, bytes.MinRead)
} }
// ReadFile reads the file named by filename and returns the contents. // ReadFile reads the file named by filename and returns the contents.
// A successful call returns err == nil, not err == EOF. Because ReadFile
// reads the whole file, it does not treat an EOF from Read as an error
// to be reported.
func ReadFile(filename string) ([]byte, error) { func ReadFile(filename string) ([]byte, error) {
f, err := os.Open(filename) f, err := os.Open(filename)
if err != nil { if err != nil {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment