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 ¶
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 ¶
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) PopMany ¶
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()