package
0.0.0-20190924193949-83369f4cd26a
Repository: https://github.com/rubanbydesign/gocache.git
Documentation: pkg.go.dev

# Functions

Copy copies one interface into the other doing type checking to make sure it's safe.
Key turns Stringer funcs, byte slices, pointers to strings, etc., into string keys.

# Variables

ErrCacheMiss is returned when the key isn't in the cache.
ErrCannotAssignValue is returned when a previously set cache value pointer cannot be updated because the new value's type cannot be assigned to the previous value's type.
ErrCannotSetValue is returned when an previously set cache value pointer cannot be set.
ErrCASConflict means that a CompareAndSwap call failed due to the cached value being modified between the Get and the CompareAndSwap.
ErrInvalidDataFormat is returned when the data retrieved from a storage engine is not in the expected format.
ErrInvalidDstVal is returned with the dstVal of the Get() func cannot be set.
ErrKeyExists indicates that the item you are trying to store with a "cas" command has been modified since you last fetched it.
ErrNotFound indicates that the item you are trying to store with a "cas" command did not exist.
ErrNotStored indicate the data was not stored, but not because of an error.
ErrUnsupportedAction indicates that the selected driver doesn't support the given action.
NeverExpires is the duration which should be set for a key to never expire because of duration.

# Interfaces

Add defines an interface which adds the key/value to the cache but only if the key doesn't already exist in the cache.
Append defines an interface which appends the value to the current value for the key.
Cache defines a cache with key expiration.
Cachestore defines a cache interface which supports exporting all it's keys and also transferring all it's data to another Cache.
Decrement defines an interface for caches which can decrement a key's value.
Flush defines an interface which store can clear all it's key/value pairs at once.
Increment defines an interface for caches which can increment a key's value.
KeyList defines an interface for announcing all keys currently set.
KeyProvider is an interface which can describe it's own key.
Prepend defines an interface which prepends the value to the current value for the key.
Replace defines an interface which replaces the value to the current value for the key.
Store defines a permanent key/value store.
Touch defines an interface for caches which can touch item's expiration time.