Version: v4.2.1 Latest Latest

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

Go to latest
Published: Jul 12, 2021 License: MIT Imports: 6 Imported by: 0




This section is empty.


This section is empty.


func Hash

func Hash(v interface{}) string

Hash returns a hash of the given struct.


type Cache

type Cache struct {
	// contains filtered or unexported fields

Cache holds a map of volatile key -> values.

func NewCache

func NewCache() *Cache

NewCache initializes a new caching space with default settings.

func NewCacheWithCapacity

func NewCacheWithCapacity(capacity int) (*Cache, error)

NewCacheWithCapacity initializes a new caching space with the given capacity.

func (*Cache) Clear

func (c *Cache) Clear()

Clear generates a new memory space, leaving the old memory unreferenced, so it can be claimed by the garbage collector.

func (*Cache) Read

func (c *Cache) Read(h Hashable) (string, bool)

Read attempts to retrieve a cached value as a string, if the value does not exists returns an empty string and false.

func (*Cache) ReadRaw

func (c *Cache) ReadRaw(h Hashable) (interface{}, bool)

ReadRaw attempts to retrieve a cached value as an interface{}, if the value does not exists returns nil and false.

func (*Cache) Write

func (c *Cache) Write(h Hashable, value interface{})

Write stores a value in memory. If the value already exists its overwritten.

type HasOnPurge

type HasOnPurge interface {

HasOnPurge type is (optionally) implemented by cache objects to clean after themselves.

type Hashable

type Hashable interface {
	Hash() string

Hashable types must implement a method that returns a key. This key will be associated with a cached value.

func String

func String(s string) Hashable

String returns a Hashable that produces a hash equal to the given string.


Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto