diff options
Diffstat (limited to 'vendor/github.com/zfjagann/golang-ring/README.md')
-rw-r--r-- | vendor/github.com/zfjagann/golang-ring/README.md | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/vendor/github.com/zfjagann/golang-ring/README.md b/vendor/github.com/zfjagann/golang-ring/README.md new file mode 100644 index 00000000..1da6cf73 --- /dev/null +++ b/vendor/github.com/zfjagann/golang-ring/README.md @@ -0,0 +1,76 @@ +# ring + +[![GoDoc](https://godoc.org/github.com/zfjagann/golang-ring?status.svg)](https://godoc.org/github.com/zfjagann/golang-ring) + +-- + import "github.com/zfjagann/golang-ring" + +Package ring provides a simple implementation of a ring buffer. + +## Usage + +```go +var DefaultCapacity int = 10 +``` +The DefaultCapacity of an uninitialized Ring buffer. + +Changing this value only affects ring buffers created after it is changed. + +#### type Ring + +```go +type Ring struct { +} +``` + +Type Ring implements a Circular Buffer. The default value of the Ring struct is +a valid (empty) Ring buffer with capacity DefaultCapacify. + +#### func (Ring) Capacity + +```go +func (r Ring) Capacity() int +``` +Capacity returns the current capacity of the ring buffer. + +#### func (*Ring) Dequeue + +```go +func (r *Ring) Dequeue() interface{} +``` +Dequeue a value from the Ring buffer. + +Returns nil if the ring buffer is empty. + +#### func (*Ring) Enqueue + +```go +func (r *Ring) Enqueue(i interface{}) +``` +Enqueue a value into the Ring buffer. + +#### func (*Ring) Peek + +```go +func (r *Ring) Peek() interface{} +``` +Read the value that Dequeue would have dequeued without actually dequeuing it. + +Returns nil if the ring buffer is empty. + +#### func (*Ring) SetCapacity + +```go +func (r *Ring) SetCapacity(size int) +``` +Set the maximum size of the ring buffer. + +#### func (*Ring) Values + +```go +func (r *Ring) Values() []interface{} +``` +Values returns a slice of all the values in the circular buffer without +modifying them at all. The returned slice can be modified independently of the +circular buffer. However, the values inside the slice are shared between the +slice and circular buffer. |