Skip to content

Commit 93368be

Browse files
committed
cmd/internal/bio: embed bufio.{Reader,Writer} in bio.{Reader,Writer}
Change-Id: Ie95b0b0d4f724f4769cf2d4f8063cb5019fa9bc9 Reviewed-on: https://go-review.googlesource.com/21781 Reviewed-by: Brad Fitzpatrick <[email protected]>
1 parent ca397bb commit 93368be

File tree

4 files changed

+16
-46
lines changed

4 files changed

+16
-46
lines changed

src/cmd/compile/internal/gc/export.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -407,7 +407,7 @@ func dumpexport() {
407407
pkgs = savedPkgs
408408
pkgMap = savedPkgMap
409409
} else {
410-
size = export(bout.Writer(), Debug_export != 0)
410+
size = export(bout.Writer, Debug_export != 0)
411411
}
412412
exportf("\n$$\n")
413413
} else {

src/cmd/internal/bio/buf.go

Lines changed: 13 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -17,29 +17,23 @@ const EOF = -1
1717
// Reader implements a seekable buffered io.Reader.
1818
type Reader struct {
1919
f *os.File
20-
r *bufio.Reader
20+
*bufio.Reader
2121
}
2222

2323
// Writer implements a seekable buffered io.Writer.
2424
type Writer struct {
2525
f *os.File
26-
w *bufio.Writer
26+
*bufio.Writer
2727
}
2828

29-
// Reader returns this Reader's underlying bufio.Reader.
30-
func (r *Reader) Reader() *bufio.Reader { return r.r }
31-
32-
// Writer returns this Writer's underlying bufio.Writer.
33-
func (w *Writer) Writer() *bufio.Writer { return w.w }
34-
3529
// Create creates the file named name and returns a Writer
3630
// for that file.
3731
func Create(name string) (*Writer, error) {
3832
f, err := os.Create(name)
3933
if err != nil {
4034
return nil, err
4135
}
42-
return &Writer{f: f, w: bufio.NewWriter(f)}, nil
36+
return &Writer{f: f, Writer: bufio.NewWriter(f)}, nil
4337
}
4438

4539
// Open returns a Reader for the file named name.
@@ -48,31 +42,23 @@ func Open(name string) (*Reader, error) {
4842
if err != nil {
4943
return nil, err
5044
}
51-
return &Reader{f: f, r: bufio.NewReader(f)}, nil
52-
}
53-
54-
func (w *Writer) Write(p []byte) (int, error) {
55-
return w.w.Write(p)
56-
}
57-
58-
func (w *Writer) WriteString(p string) (int, error) {
59-
return w.w.WriteString(p)
45+
return &Reader{f: f, Reader: bufio.NewReader(f)}, nil
6046
}
6147

6248
func (r *Reader) Seek(offset int64, whence int) int64 {
6349
if whence == 1 {
64-
offset -= int64(r.r.Buffered())
50+
offset -= int64(r.Buffered())
6551
}
6652
off, err := r.f.Seek(offset, whence)
6753
if err != nil {
6854
log.Fatalf("seeking in output: %v", err)
6955
}
70-
r.r.Reset(r.f)
56+
r.Reset(r.f)
7157
return off
7258
}
7359

7460
func (w *Writer) Seek(offset int64, whence int) int64 {
75-
if err := w.w.Flush(); err != nil {
61+
if err := w.Flush(); err != nil {
7662
log.Fatalf("writing output: %v", err)
7763
}
7864
off, err := w.f.Seek(offset, whence)
@@ -87,12 +73,12 @@ func (r *Reader) Offset() int64 {
8773
if err != nil {
8874
log.Fatalf("seeking in output [0, 1]: %v", err)
8975
}
90-
off -= int64(r.r.Buffered())
76+
off -= int64(r.Buffered())
9177
return off
9278
}
9379

9480
func (w *Writer) Offset() int64 {
95-
if err := w.w.Flush(); err != nil {
81+
if err := w.Flush(); err != nil {
9682
log.Fatalf("writing output: %v", err)
9783
}
9884
off, err := w.f.Seek(0, 1)
@@ -102,16 +88,8 @@ func (w *Writer) Offset() int64 {
10288
return off
10389
}
10490

105-
func (w *Writer) Flush() error {
106-
return w.w.Flush()
107-
}
108-
109-
func (w *Writer) WriteByte(c byte) error {
110-
return w.w.WriteByte(c)
111-
}
112-
11391
func Bread(r *Reader, p []byte) int {
114-
n, err := io.ReadFull(r.r, p)
92+
n, err := io.ReadFull(r, p)
11593
if n == 0 {
11694
if err != nil && err != io.EOF {
11795
n = -1
@@ -121,7 +99,7 @@ func Bread(r *Reader, p []byte) int {
12199
}
122100

123101
func Bgetc(r *Reader) int {
124-
c, err := r.r.ReadByte()
102+
c, err := r.ReadByte()
125103
if err != nil {
126104
if err != io.EOF {
127105
log.Fatalf("reading input: %v", err)
@@ -131,16 +109,8 @@ func Bgetc(r *Reader) int {
131109
return int(c)
132110
}
133111

134-
func (r *Reader) Read(p []byte) (int, error) {
135-
return r.r.Read(p)
136-
}
137-
138-
func (r *Reader) Peek(n int) ([]byte, error) {
139-
return r.r.Peek(n)
140-
}
141-
142112
func Brdline(r *Reader, delim int) string {
143-
s, err := r.r.ReadBytes(byte(delim))
113+
s, err := r.ReadBytes(byte(delim))
144114
if err != nil {
145115
log.Fatalf("reading input: %v", err)
146116
}
@@ -152,7 +122,7 @@ func (r *Reader) Close() error {
152122
}
153123

154124
func (w *Writer) Close() error {
155-
err := w.w.Flush()
125+
err := w.Flush()
156126
err1 := w.f.Close()
157127
if err == nil {
158128
err = err1

src/cmd/internal/obj/objfile.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,7 @@ func (w *objWriter) writeLengths() {
377377
func newObjWriter(ctxt *Link, b *bio.Writer) *objWriter {
378378
return &objWriter{
379379
ctxt: ctxt,
380-
wr: b.Writer(),
380+
wr: b.Writer,
381381
vrefIdx: make(map[string]int),
382382
refIdx: make(map[string]int),
383383
}

src/cmd/link/internal/ld/objfile.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ type objReader struct {
150150
func LoadObjFile(ctxt *Link, f *bio.Reader, pkg string, length int64, pn string) {
151151
start := f.Offset()
152152
r := &objReader{
153-
rd: f.Reader(),
153+
rd: f.Reader,
154154
pkg: pkg,
155155
ctxt: ctxt,
156156
pn: pn,

0 commit comments

Comments
 (0)