Files
gonic/scanner/folder_stack.go
2019-05-23 13:48:16 +01:00

36 lines
504 B
Go

package scanner
import "github.com/sentriz/gonic/model"
type folderStack []*model.Folder
func (s *folderStack) Push(v *model.Folder) {
*s = append(*s, v)
}
func (s *folderStack) Pop() *model.Folder {
l := len(*s)
if l == 0 {
return nil
}
r := (*s)[l-1]
*s = (*s)[:l-1]
return r
}
func (s *folderStack) Peek() *model.Folder {
l := len(*s)
if l == 0 {
return nil
}
return (*s)[l-1]
}
func (s *folderStack) PeekID() int {
l := len(*s)
if l == 0 {
return 0
}
return (*s)[l-1].ID
}