lru

package
v0.0.0-...-a838072 Latest Latest
Warning

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

Go to latest
Published: Sep 19, 2019 License: Unlicense, MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cache

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

Cache provides a generic thread-safe lru cache that can be used for storing filters, blocks, etc.

func NewCache

func NewCache(capacity uint64) *Cache

NewCache return a cache with specified capacity, the cache's size can't exceed that given capacity.

func (*Cache) Get

func (c *Cache) Get(key interface{}) (cache.Value, error)

Get will return value for a given key, making the element the most recently accessed item in the process. Will return nil if the key isn't found.

func (*Cache) Len

func (c *Cache) Len() int

Len returns number of elements in the cache.

func (*Cache) Put

func (c *Cache) Put(key interface{}, value cache.Value) error

Put inserts a given (key,value) pair into the cache, if the key already exists, it will replace value and update it to be most recent item in cache.

Jump to

Keyboard shortcuts

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