summaryrefslogtreecommitdiff
path: root/src/pkg/io/bytebuffer.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/pkg/io/bytebuffer.go')
-rw-r--r--src/pkg/io/bytebuffer.go11
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 {