diff options
| author | Eric <eric@tnz.fr> | 2020-04-13 21:28:47 +0000 |
|---|---|---|
| committer | Ian Lance Taylor <iant@golang.org> | 2020-04-13 22:48:16 +0000 |
| commit | 240eac38e1be22d8dfaf96731c337afa479248ff (patch) | |
| tree | 7063931cb27d7fee52f6d8c58a15dd80f29dab03 /src/io/example_test.go | |
| parent | ca017a6fb9b46860ab0b5054ca07feea3d711a36 (diff) | |
| download | go-240eac38e1be22d8dfaf96731c337afa479248ff.tar.xz | |
io: simplify Examples
- CopyN: 5 creates ambiguity with respect to whitespace and upperbound
- TeeReader less boilerplate and displays a common usage of it
- SectionReader_* all sections unified to 5:17 for clarity
- SectionReader_Seek uses io.Copy to stdout like other examples
- Seeker_Seek remove useless prints
- Pipe print reader like other examples
Updates #36417
Change-Id: Ibd01761d5a5786cdb1ea934f7a98f8302430c8a5
GitHub-Last-Rev: 4c17f9a8e32d89743b7eaec7c52032256972cc0a
GitHub-Pull-Request: golang/go#38379
Reviewed-on: https://go-review.googlesource.com/c/go/+/227868
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/io/example_test.go')
| -rw-r--r-- | src/io/example_test.go | 47 |
1 files changed, 15 insertions, 32 deletions
diff --git a/src/io/example_test.go b/src/io/example_test.go index 2eaab678c9..465eed4d5e 100644 --- a/src/io/example_test.go +++ b/src/io/example_test.go @@ -48,7 +48,7 @@ func ExampleCopyBuffer() { func ExampleCopyN() { r := strings.NewReader("some io.Reader stream to be read") - if _, err := io.CopyN(os.Stdout, r, 5); err != nil { + if _, err := io.CopyN(os.Stdout, r, 4); err != nil { log.Fatal(err) } @@ -136,25 +136,15 @@ func ExampleMultiReader() { } func ExampleTeeReader() { - r := strings.NewReader("some io.Reader stream to be read\n") - var buf bytes.Buffer - tee := io.TeeReader(r, &buf) - - printall := func(r io.Reader) { - b, err := ioutil.ReadAll(r) - if err != nil { - log.Fatal(err) - } + var r io.Reader = strings.NewReader("some io.Reader stream to be read\n") - fmt.Printf("%s", b) - } + r = io.TeeReader(r, os.Stdout) - printall(tee) - printall(&buf) + // Everything read from r will be copied to stdout. + ioutil.ReadAll(r) // Output: // some io.Reader stream to be read - // some io.Reader stream to be read } func ExampleSectionReader() { @@ -171,7 +161,7 @@ func ExampleSectionReader() { func ExampleSectionReader_ReadAt() { r := strings.NewReader("some io.Reader stream to be read\n") - s := io.NewSectionReader(r, 5, 16) + s := io.NewSectionReader(r, 5, 17) buf := make([]byte, 6) if _, err := s.ReadAt(buf, 10); err != nil { @@ -186,30 +176,24 @@ func ExampleSectionReader_ReadAt() { func ExampleSectionReader_Seek() { r := strings.NewReader("some io.Reader stream to be read\n") - s := io.NewSectionReader(r, 5, 16) + s := io.NewSectionReader(r, 5, 17) if _, err := s.Seek(10, io.SeekStart); err != nil { log.Fatal(err) } - buf := make([]byte, 6) - if _, err := s.Read(buf); err != nil { + if _, err := io.Copy(os.Stdout, s); err != nil { log.Fatal(err) } - fmt.Printf("%s\n", buf) - // Output: // stream } func ExampleSeeker_Seek() { r := strings.NewReader("some io.Reader stream to be read\n") - if _, err := io.Copy(os.Stdout, r); err != nil { - log.Fatal(err) - } - r.Seek(15, io.SeekStart) + r.Seek(5, io.SeekStart) // move to the 5th char from the start if _, err := io.Copy(os.Stdout, r); err != nil { log.Fatal(err) } @@ -220,8 +204,7 @@ func ExampleSeeker_Seek() { } // Output: - // some io.Reader stream to be read - // stream to be read + // io.Reader stream to be read // read } @@ -247,14 +230,14 @@ func ExamplePipe() { r, w := io.Pipe() go func() { - fmt.Fprint(w, "some text to be read\n") + fmt.Fprint(w, "some io.Reader stream to be read\n") w.Close() }() - buf := new(bytes.Buffer) - buf.ReadFrom(r) - fmt.Print(buf.String()) + if _, err := io.Copy(os.Stdout, r); err != nil { + log.Fatal(err) + } // Output: - // some text to be read + // some io.Reader stream to be read } |
