Documentation
¶
Index ¶
- Constants
- func UnixTimestampToTime(secs int64) time.Time
- type FIFOQueue
- func (q *FIFOQueue) CutAfter(idx int) []IElement
- func (q *FIFOQueue) CutBefore(idx int) []IElement
- func (q *FIFOQueue) Dump() string
- func (q *FIFOQueue) Elements() []IElement
- func (q *FIFOQueue) FindElements(cmp *definations.ComparisonObject) []IElement
- func (q *FIFOQueue) First() (interface{}, bool)
- func (q *FIFOQueue) GetElement(ID string) (interface{}, bool)
- func (q *FIFOQueue) GetOne(item IElement) (interface{}, bool)
- func (q *FIFOQueue) GetSize() int
- func (q *FIFOQueue) Pop() (interface{}, bool)
- func (q *FIFOQueue) PopMany(maxResults int) ([]interface{}, int)
- func (q *FIFOQueue) Push(item IElement) bool
- func (q *FIFOQueue) Remove(item IElement) bool
- type IElement
- type IQueue
- type OrderedQueue
- func (q *OrderedQueue) Add(item IElement) *OrderedQueue
- func (q *OrderedQueue) CutAfter(idx int) []IElement
- func (q *OrderedQueue) CutBefore(idx int) []IElement
- func (q *OrderedQueue) Dump() string
- func (q *OrderedQueue) Elements() []IElement
- func (q *OrderedQueue) FindElements(cmp *definations.ComparisonObject) []IElement
- func (q *OrderedQueue) First() (interface{}, bool)
- func (q *OrderedQueue) GetElement(ID string) (interface{}, bool)
- func (q *OrderedQueue) GetOne(item IElement) (interface{}, bool)
- func (q *OrderedQueue) GetSize() int
- func (q *OrderedQueue) Pop() (interface{}, bool)
- func (q *OrderedQueue) PopMany(maxResults int) ([]interface{}, int)
- func (q *OrderedQueue) Push(item IElement) bool
- func (q *OrderedQueue) Remove(item IElement) bool
- type OrderingMode
Constants ¶
const ( OrderingAsc = OrderingMode(0) OrderingDesc = OrderingMode(1) )
Constants
Variables ¶
This section is empty.
Functions ¶
func UnixTimestampToTime ¶
UnixTimestampToTime convert unix timestamp in seconds to time.Time
Types ¶
type FIFOQueue ¶
type FIFOQueue struct {
// contains filtered or unexported fields
}
FIFOQueue queue
func (*FIFOQueue) FindElements ¶ added in v0.2.2
func (q *FIFOQueue) FindElements(cmp *definations.ComparisonObject) []IElement
FindElements by compaire condition
func (*FIFOQueue) GetElement ¶
GetElement get element by id
type IElement ¶
type IElement interface {
GetID() string
GetName() string
OrderingValue() int64
DebugString() string
}
IElement queue element
type IQueue ¶
type IQueue interface {
// Get an element from queue identified by element.GetID()
GetOne(IElement) (interface{}, bool)
// Pop first element from queue, the element would be deleted from queue
Pop() (interface{}, bool)
// PopMany head elements from queue limited by maxResults, the element would be deleted from queue
PopMany(maxResults int) ([]interface{}, int)
// First element of queue would be returned, the element would not be deleted from queue
First() (interface{}, bool)
// Push an element into queue
Push(IElement) bool
// Remove an element from queue identified by element.GetID()
Remove(IElement) bool
// Elements of all queue
Elements() []IElement
// FindElements by compaire condition
FindElements(*definations.ComparisonObject) []IElement
//Dump all elements from queue
Dump() string
// GetElement
GetElement(ID string) (interface{}, bool)
// CutBefore cut elements out before index
CutBefore(idx int) []IElement
// CutAfter cut elements out after index
CutAfter(idx int) []IElement
// GetSize of queue
GetSize() int
}
IQueue interface
type OrderedQueue ¶
type OrderedQueue struct {
// contains filtered or unexported fields
}
OrderedQueue queue
func NewAscOrderingQueue ¶
func NewAscOrderingQueue() *OrderedQueue
NewAscOrderingQueue new queue ordered by ascending
func NewDescOrderingQueue ¶
func NewDescOrderingQueue() *OrderedQueue
NewDescOrderingQueue new queue ordered by descending
func (*OrderedQueue) Add ¶
func (q *OrderedQueue) Add(item IElement) *OrderedQueue
Add element depending on ordered queue ordering mode
func (*OrderedQueue) CutAfter ¶
func (q *OrderedQueue) CutAfter(idx int) []IElement
CutAfter cut elements out after index
func (*OrderedQueue) CutBefore ¶
func (q *OrderedQueue) CutBefore(idx int) []IElement
CutBefore cut elements out before index
func (*OrderedQueue) FindElements ¶ added in v0.2.2
func (q *OrderedQueue) FindElements(cmp *definations.ComparisonObject) []IElement
FindElements by compaire condition
func (*OrderedQueue) First ¶
func (q *OrderedQueue) First() (interface{}, bool)
First item without pop
func (*OrderedQueue) GetElement ¶
func (q *OrderedQueue) GetElement(ID string) (interface{}, bool)
GetElement get element by id
func (*OrderedQueue) GetOne ¶
func (q *OrderedQueue) GetOne(item IElement) (interface{}, bool)
GetOne an element from queue identified by element.GetID()
func (*OrderedQueue) GetSize ¶ added in v0.2.2
func (q *OrderedQueue) GetSize() int
GetSize of queue
func (*OrderedQueue) PopMany ¶ added in v0.2.3
func (q *OrderedQueue) PopMany(maxResults int) ([]interface{}, int)
PopMany head elements from queue limited by maxResults, the element would be deleted from queue
func (*OrderedQueue) Push ¶
func (q *OrderedQueue) Push(item IElement) bool
Push element depending on ordered queue ordering mode
func (*OrderedQueue) Remove ¶
func (q *OrderedQueue) Remove(item IElement) bool
Remove an element from queue identified by element.GetID()