summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/zfjagann/golang-ring
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/zfjagann/golang-ring')
-rw-r--r--vendor/github.com/zfjagann/golang-ring/.gitignore24
-rw-r--r--vendor/github.com/zfjagann/golang-ring/README.md76
-rw-r--r--vendor/github.com/zfjagann/golang-ring/makefile10
3 files changed, 110 insertions, 0 deletions
diff --git a/vendor/github.com/zfjagann/golang-ring/.gitignore b/vendor/github.com/zfjagann/golang-ring/.gitignore
new file mode 100644
index 00000000..daf913b1
--- /dev/null
+++ b/vendor/github.com/zfjagann/golang-ring/.gitignore
@@ -0,0 +1,24 @@
+# Compiled Object files, Static and Dynamic libs (Shared Objects)
+*.o
+*.a
+*.so
+
+# Folders
+_obj
+_test
+
+# Architecture specific extensions/prefixes
+*.[568vq]
+[568vq].out
+
+*.cgo1.go
+*.cgo2.c
+_cgo_defun.c
+_cgo_gotypes.go
+_cgo_export.*
+
+_testmain.go
+
+*.exe
+*.test
+*.prof
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.
diff --git a/vendor/github.com/zfjagann/golang-ring/makefile b/vendor/github.com/zfjagann/golang-ring/makefile
new file mode 100644
index 00000000..48a57357
--- /dev/null
+++ b/vendor/github.com/zfjagann/golang-ring/makefile
@@ -0,0 +1,10 @@
+.PHONY: ring test doc
+
+ring: test doc
+
+test:
+ go fmt
+ go test -v
+
+doc:
+ godocdown > README.md