treemap

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Jun 24, 2016 License: BSD-2-Clause Imports: 4 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Iterator

type Iterator struct {
	// contains filtered or unexported fields
}

func (*Iterator) Key

func (iterator *Iterator) Key() interface{}

Returns the current element's key. Does not modify the state of the iterator.

func (*Iterator) Next

func (iterator *Iterator) Next() bool

Moves the iterator to the next element and returns true if there was a next element in the container. If Next() returns true, then next element's key and value can be retrieved by Key() and Value(). Modifies the state of the iterator.

func (*Iterator) Value

func (iterator *Iterator) Value() interface{}

Returns the current element's value. Does not modify the state of the iterator.

type Map

type Map struct {
	// contains filtered or unexported fields
}

func NewWith

func NewWith(comparator utils.Comparator) *Map

Instantiates a tree map with the custom comparator.

func NewWithIntComparator

func NewWithIntComparator() *Map

Instantiates a tree map with the IntComparator, i.e. keys are of type int.

func NewWithStringComparator

func NewWithStringComparator() *Map

Instantiates a tree map with the StringComparator, i.e. keys are of type string.

func (*Map) All

func (m *Map) All(f func(key interface{}, value interface{}) bool) bool

Passes each element of the container to the given function and returns true if the function returns true for all elements.

func (*Map) Any

func (m *Map) Any(f func(key interface{}, value interface{}) bool) bool

Passes each element of the container to the given function and returns true if the function ever returns true for any element.

func (*Map) Clear

func (m *Map) Clear()

Removes all elements from the map.

func (*Map) Each

func (m *Map) Each(f func(key interface{}, value interface{}))

Calls the given function once for each element, passing that element's key and value.

func (*Map) Empty

func (m *Map) Empty() bool

Returns true if map does not contain any elements

func (*Map) Find

func (m *Map) Find(f func(key interface{}, value interface{}) bool) (interface{}, interface{})

Passes each element of the container to the given function and returns the first (key,value) for which the function is true or nil,nil otherwise if no element matches the criteria.

func (*Map) Get

func (m *Map) Get(key interface{}) (value interface{}, found bool)

Searches the element in the map by key and returns its value or nil if key is not found in tree. Second return parameter is true if key was found, otherwise false. Key should adhere to the comparator's type assertion, otherwise method panics.

func (*Map) Iterator

func (m *Map) Iterator() Iterator

Returns a stateful iterator whose elements are key/value pairs.

func (*Map) Keys

func (m *Map) Keys() []interface{}

Returns all keys in-order

func (*Map) Map

func (m *Map) Map(f func(key1 interface{}, value1 interface{}) (interface{}, interface{})) *Map

Invokes the given function once for each element and returns a container containing the values returned by the given function as key/value pairs.

func (*Map) Max

func (m *Map) Max() (key interface{}, value interface{})

Returns the maximum key and its value from the tree map. Returns nil, nil if map is empty.

func (*Map) Min

func (m *Map) Min() (key interface{}, value interface{})

Returns the minimum key and its value from the tree map. Returns nil, nil if map is empty.

func (*Map) Put

func (m *Map) Put(key interface{}, value interface{})

Inserts key-value pair into the map. Key should adhere to the comparator's type assertion, otherwise method panics.

func (*Map) Remove

func (m *Map) Remove(key interface{})

Remove the element from the map by key. Key should adhere to the comparator's type assertion, otherwise method panics.

func (*Map) Select

func (m *Map) Select(f func(key interface{}, value interface{}) bool) *Map

Returns a new container containing all elements for which the given function returns a true value.

func (*Map) Size

func (m *Map) Size() int

Returns number of elements in the map.

func (*Map) String

func (m *Map) String() string

func (*Map) Values

func (m *Map) Values() []interface{}

Returns all values in-order based on the key.

Jump to

Keyboard shortcuts

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