queue

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 19, 2023 License: MIT Imports: 5 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Option

type Option[T any] func(option *Options[T])

Option is a function type used to set Options

func WithContainer

func WithContainer[T any](c container.Container[T]) Option[T]

WithContainer is used to set a Queue's underlying container

func WithGoroutineSafe

func WithGoroutineSafe[T any]() Option[T]

WithGoroutineSafe is used to set a Queue goroutine-safe

func WithListContainer

func WithListContainer[T any]() Option[T]

WithListContainer is used to set List as a Queue's underlying container

type Options

type Options[T any] struct {
	// contains filtered or unexported fields
}

Options holds Queue's options

type Queue

type Queue[T any] struct {
	// contains filtered or unexported fields
}

Queue is a first-in-first-out data structure

func New

func New[T any](opts ...Option[T]) *Queue[T]

New creates a new queue

func (*Queue[T]) Back

func (q *Queue[T]) Back() T

Back returns the back value in the queue

func (*Queue[T]) Clear

func (q *Queue[T]) Clear()

Clear clears all elements in the queue

func (*Queue[T]) Empty

func (q *Queue[T]) Empty() bool

Empty returns true if the queue is empty, otherwise returns false

func (*Queue[T]) Front

func (q *Queue[T]) Front() T

Front returns the front value in the queue

func (*Queue[T]) Pop

func (q *Queue[T]) Pop() T

Pop removes the the front element in the queue, and returns its value

func (*Queue[T]) Push

func (q *Queue[T]) Push(value T)

Push pushes a value to the end of the queue

func (*Queue[T]) Size

func (q *Queue[T]) Size() int

Size returns the amount of elements in the queue

func (*Queue[T]) String

func (q *Queue[T]) String() string

String returns a string representation of the queue

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL