summaryrefslogtreecommitdiff
path: root/src/pkg/io/io.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/pkg/io/io.go')
-rw-r--r--src/pkg/io/io.go140
1 files changed, 70 insertions, 70 deletions
diff --git a/src/pkg/io/io.go b/src/pkg/io/io.go
index 68c5ccc24..5d18476f5 100644
--- a/src/pkg/io/io.go
+++ b/src/pkg/io/io.go
@@ -9,13 +9,13 @@
package io
import (
- "os";
- "strings";
+ "os"
+ "strings"
)
// Error represents an unexpected I/O behavior.
type Error struct {
- os.ErrorString;
+ os.ErrorString
}
// ErrShortWrite means that a write accepted fewer bytes than requested
@@ -39,7 +39,7 @@ var ErrUnexpectedEOF os.Error = &Error{"unexpected EOF"}
// Read may return a non-zero number of bytes with a non-nil err.
// In particular, a Read that exhausts the input may return n > 0, os.EOF.
type Reader interface {
- Read(p []byte) (n int, err os.Error);
+ Read(p []byte) (n int, err os.Error)
}
// Writer is the interface that wraps the basic Write method.
@@ -49,12 +49,12 @@ type Reader interface {
// and any error encountered that caused the write to stop early.
// Write must return a non-nil error if it returns n < len(p).
type Writer interface {
- Write(p []byte) (n int, err os.Error);
+ Write(p []byte) (n int, err os.Error)
}
// Closer is the interface that wraps the basic Close method.
type Closer interface {
- Close() os.Error;
+ Close() os.Error
}
// Seeker is the interface that wraps the basic Seek method.
@@ -65,61 +65,61 @@ type Closer interface {
// relative to the end. Seek returns the new offset and an Error, if
// any.
type Seeker interface {
- Seek(offset int64, whence int) (ret int64, err os.Error);
+ Seek(offset int64, whence int) (ret int64, err os.Error)
}
// ReadWriter is the interface that groups the basic Read and Write methods.
type ReadWriter interface {
- Reader;
- Writer;
+ Reader
+ Writer
}
// ReadCloser is the interface that groups the basic Read and Close methods.
type ReadCloser interface {
- Reader;
- Closer;
+ Reader
+ Closer
}
// WriteCloser is the interface that groups the basic Write and Close methods.
type WriteCloser interface {
- Writer;
- Closer;
+ Writer
+ Closer
}
// ReadWriteCloser is the interface that groups the basic Read, Write and Close methods.
type ReadWriteCloser interface {
- Reader;
- Writer;
- Closer;
+ Reader
+ Writer
+ Closer
}
// ReadSeeker is the interface that groups the basic Read and Seek methods.
type ReadSeeker interface {
- Reader;
- Seeker;
+ Reader
+ Seeker
}
// WriteSeeker is the interface that groups the basic Write and Seek methods.
type WriteSeeker interface {
- Writer;
- Seeker;
+ Writer
+ Seeker
}
// ReadWriteSeeker is the interface that groups the basic Read, Write and Seek methods.
type ReadWriteSeeker interface {
- Reader;
- Writer;
- Seeker;
+ Reader
+ Writer
+ Seeker
}
// ReaderFrom is the interface that wraps the ReadFrom method.
type ReaderFrom interface {
- ReadFrom(r Reader) (n int64, err os.Error);
+ ReadFrom(r Reader) (n int64, err os.Error)
}
// WriterTo is the interface that wraps the WriteTo method.
type WriterTo interface {
- WriteTo(w Writer) (n int64, err os.Error);
+ WriteTo(w Writer) (n int64, err os.Error)
}
// ReaderAt is the interface that wraps the basic ReadAt method.
@@ -137,7 +137,7 @@ type WriterTo interface {
// ReadAt may return a non-zero number of bytes with a non-nil err.
// In particular, a ReadAt that exhausts the input may return n > 0, os.EOF.
type ReaderAt interface {
- ReadAt(p []byte, off int64) (n int, err os.Error);
+ ReadAt(p []byte, off int64) (n int, err os.Error)
}
// WriterAt is the interface that wraps the basic WriteAt method.
@@ -147,7 +147,7 @@ type ReaderAt interface {
// and any error encountered that caused the write to stop early.
// WriteAt must return a non-nil error if it returns n < len(p).
type WriterAt interface {
- WriteAt(p []byte, off int64) (n int, err os.Error);
+ WriteAt(p []byte, off int64) (n int, err os.Error)
}
// WriteString writes the contents of the string s to w, which accepts an array of bytes.
@@ -161,9 +161,9 @@ func WriteString(w Writer, s string) (n int, err os.Error) {
// If an EOF happens after reading fewer than min bytes,
// ReadAtLeast returns ErrUnexpectedEOF.
func ReadAtLeast(r Reader, buf []byte, min int) (n int, err os.Error) {
- n = 0;
+ n = 0
for n < min {
- nn, e := r.Read(buf[n:]);
+ nn, e := r.Read(buf[n:])
if nn > 0 {
n += nn
}
@@ -171,10 +171,10 @@ func ReadAtLeast(r Reader, buf []byte, min int) (n int, err os.Error) {
if e == os.EOF && n > 0 {
e = ErrUnexpectedEOF
}
- return n, e;
+ return n, e
}
}
- return n, nil;
+ return n, nil
}
// ReadFull reads exactly len(buf) bytes from r into buf.
@@ -197,33 +197,33 @@ func Copyn(dst Writer, src Reader, n int64) (written int64, err os.Error) {
if rt, ok := dst.(ReaderFrom); ok {
return rt.ReadFrom(LimitReader(src, n))
}
- buf := make([]byte, 32*1024);
+ buf := make([]byte, 32*1024)
for written < n {
- l := len(buf);
+ l := len(buf)
if d := n - written; d < int64(l) {
l = int(d)
}
- nr, er := src.Read(buf[0:l]);
+ nr, er := src.Read(buf[0:l])
if nr > 0 {
- nw, ew := dst.Write(buf[0:nr]);
+ nw, ew := dst.Write(buf[0:nr])
if nw > 0 {
written += int64(nw)
}
if ew != nil {
- err = ew;
- break;
+ err = ew
+ break
}
if nr != nw {
- err = ErrShortWrite;
- break;
+ err = ErrShortWrite
+ break
}
}
if er != nil {
- err = er;
- break;
+ err = er
+ break
}
}
- return written, err;
+ return written, err
}
// Copy copies from src to dst until either EOF is reached
@@ -244,41 +244,41 @@ func Copy(dst Writer, src Reader) (written int64, err os.Error) {
if wt, ok := src.(WriterTo); ok {
return wt.WriteTo(dst)
}
- buf := make([]byte, 32*1024);
+ buf := make([]byte, 32*1024)
for {
- nr, er := src.Read(buf);
+ nr, er := src.Read(buf)
if nr > 0 {
- nw, ew := dst.Write(buf[0:nr]);
+ nw, ew := dst.Write(buf[0:nr])
if nw > 0 {
written += int64(nw)
}
if ew != nil {
- err = ew;
- break;
+ err = ew
+ break
}
if nr != nw {
- err = ErrShortWrite;
- break;
+ err = ErrShortWrite
+ break
}
}
if er == os.EOF {
break
}
if er != nil {
- err = er;
- break;
+ err = er
+ break
}
}
- return written, err;
+ return written, err
}
// LimitReader returns a Reader that reads from r
// but stops with os.EOF after n bytes.
-func LimitReader(r Reader, n int64) Reader { return &limitedReader{r, n} }
+func LimitReader(r Reader, n int64) Reader { return &limitedReader{r, n} }
type limitedReader struct {
- r Reader;
- n int64;
+ r Reader
+ n int64
}
func (l *limitedReader) Read(p []byte) (n int, err os.Error) {
@@ -288,9 +288,9 @@ func (l *limitedReader) Read(p []byte) (n int, err os.Error) {
if int64(len(p)) > l.n {
p = p[0:l.n]
}
- n, err = l.r.Read(p);
- l.n -= int64(n);
- return;
+ n, err = l.r.Read(p)
+ l.n -= int64(n)
+ return
}
// NewSectionReader returns a SectionReader that reads from r
@@ -302,10 +302,10 @@ func NewSectionReader(r ReaderAt, off int64, n int64) *SectionReader {
// SectionReader implements Read, Seek, and ReadAt on a section
// of an underlying ReaderAt.
type SectionReader struct {
- r ReaderAt;
- base int64;
- off int64;
- limit int64;
+ r ReaderAt
+ base int64
+ off int64
+ limit int64
}
func (s *SectionReader) Read(p []byte) (n int, err os.Error) {
@@ -315,9 +315,9 @@ func (s *SectionReader) Read(p []byte) (n int, err os.Error) {
if max := s.limit - s.off; int64(len(p)) > max {
p = p[0:max]
}
- n, err = s.r.ReadAt(p, s.off);
- s.off += int64(n);
- return;
+ n, err = s.r.ReadAt(p, s.off)
+ s.off += int64(n)
+ return
}
func (s *SectionReader) Seek(offset int64, whence int) (ret int64, err os.Error) {
@@ -334,20 +334,20 @@ func (s *SectionReader) Seek(offset int64, whence int) (ret int64, err os.Error)
if offset < s.off || offset > s.limit {
return 0, os.EINVAL
}
- s.off = offset;
- return offset - s.base, nil;
+ s.off = offset
+ return offset - s.base, nil
}
func (s *SectionReader) ReadAt(p []byte, off int64) (n int, err os.Error) {
if off < 0 || off >= s.limit-s.base {
return 0, os.EOF
}
- off += s.base;
+ off += s.base
if max := s.limit - off; int64(len(p)) > max {
p = p[0:max]
}
- return s.r.ReadAt(p, off);
+ return s.r.ReadAt(p, off)
}
// Size returns the size of the section in bytes.
-func (s *SectionReader) Size() int64 { return s.limit - s.base }
+func (s *SectionReader) Size() int64 { return s.limit - s.base }