From fef4ced569da1bdbc167d0786ab0a188973de3c5 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sun, 28 Aug 2016 14:08:21 +0200 Subject: Comments --- go/circular-buffer/circular_buffer.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/go/circular-buffer/circular_buffer.go b/go/circular-buffer/circular_buffer.go index b17ea2b..7d15aa1 100644 --- a/go/circular-buffer/circular_buffer.go +++ b/go/circular-buffer/circular_buffer.go @@ -4,6 +4,7 @@ import "errors" const testVersion = 3 +// Buffer is circular buffer type Buffer struct { v []byte // values rpos int // read position @@ -11,10 +12,12 @@ type Buffer struct { n int // occupied cells } +// NewBuffer allocates new buffer func NewBuffer(size int) *Buffer { return &Buffer{v: make([]byte, size)} } +// ReadByte reads byte from buffer func (b *Buffer) ReadByte() (byte, error) { if b.n == 0 { return 0, errors.New("empty") @@ -25,6 +28,7 @@ func (b *Buffer) ReadByte() (byte, error) { return val, nil } +// WriteByte appends byte to buffer func (b *Buffer) WriteByte(c byte) error { if b.n == len(b.v) { return errors.New("full") @@ -35,6 +39,7 @@ func (b *Buffer) WriteByte(c byte) error { return nil } +// Overwrite oldest value func (b *Buffer) Overwrite(c byte) { if err := b.WriteByte(c); err != nil { b.v[b.rpos] = c @@ -42,6 +47,7 @@ func (b *Buffer) Overwrite(c byte) { } } +// Reset buffer func (b *Buffer) Reset() { b.n = 0 b.rpos = b.wpos -- cgit v1.2.3