diff options
Diffstat (limited to 'src/pkg/io/bytebuffer.go')
-rw-r--r-- | src/pkg/io/bytebuffer.go | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/pkg/io/bytebuffer.go b/src/pkg/io/bytebuffer.go index 921ddb17a..000c05352 100644 --- a/src/pkg/io/bytebuffer.go +++ b/src/pkg/io/bytebuffer.go @@ -102,6 +102,17 @@ func (b *ByteBuffer) Read(p []byte) (n int, err os.Error) { return n, nil } +// ReadByte reads and returns the next byte from the buffer. +// If no byte is available, it returns error ErrEOF. +func (b *ByteBuffer) ReadByte() (c byte, err os.Error) { + if b.off >= len(b.buf) { + return 0, ErrEOF; + } + c = b.buf[b.off]; + b.off++; + return c, nil; +} + // NewByteBufferFromArray creates and initializes a new ByteBuffer // with buf as its initial contents. func NewByteBufferFromArray(buf []byte) *ByteBuffer { |