aboutsummaryrefslogtreecommitdiff
path: root/vendor/github.com/sergi/go-diff/diffmatchpatch/stack.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/sergi/go-diff/diffmatchpatch/stack.go')
-rw-r--r--vendor/github.com/sergi/go-diff/diffmatchpatch/stack.go66
1 files changed, 0 insertions, 66 deletions
diff --git a/vendor/github.com/sergi/go-diff/diffmatchpatch/stack.go b/vendor/github.com/sergi/go-diff/diffmatchpatch/stack.go
deleted file mode 100644
index d28ae459..00000000
--- a/vendor/github.com/sergi/go-diff/diffmatchpatch/stack.go
+++ /dev/null
@@ -1,66 +0,0 @@
-package diffmatchpatch
-
-import (
- "fmt"
-)
-
-type Stack struct {
- top *Element
- size int
-}
-
-type Element struct {
- value interface{}
- next *Element
-}
-
-// Len returns the stack's length
-func (s *Stack) Len() int {
- return s.size
-}
-
-// Push appends a new element onto the stack
-func (s *Stack) Push(value interface{}) {
- s.top = &Element{value, s.top}
- s.size++
-}
-
-// Pop removes the top element from the stack and return its value
-// If the stack is empty, return nil
-func (s *Stack) Pop() (value interface{}) {
- if s.size > 0 {
- value, s.top = s.top.value, s.top.next
- s.size--
- return
- }
- return nil
-}
-
-// Peek returns the value of the element on the top of the stack
-// but don't remove it. If the stack is empty, return nil
-func (s *Stack) Peek() (value interface{}) {
- if s.size > 0 {
- value = s.top.value
- return
- }
- return -1
-}
-
-// Clear empties the stack
-func (s *Stack) Clear() {
- s.top = nil
- s.size = 0
-}
-
-func main() {
- stack := new(Stack)
-
- stack.Push("Things")
- stack.Push("and")
- stack.Push("Stuff")
-
- for stack.Len() > 0 {
- fmt.Printf("%s ", stack.Pop().(string))
- }
- fmt.Println()
-}