cache

package
v4.6.2 Latest Latest
Warning

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

Go to latest
Published: Aug 28, 2023 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RemoveRoot

func RemoveRoot(root string) (errOut error)

RemoveRoot removes a cache root and all of its contents. This is the nuclear option.

Types

type Cache

type Cache struct {
	Root string
	// Set to true to make the content read-only on disk.
	// TODO: find a way to use this without the annoying side effect of requiring sudo to rm -rf the cache.
	ReadOnly bool
}

func (*Cache) Dir

func (c *Cache) Dir(key string, validate validateFunc, populate populateFunc) (_ string, unlock func() error, _ error)

Dir returns a fs.FS for the given key, populating the cache if necessary. The returned fs.FS is valid until unlock is called. After that the contents may change unexpectedly.

func (*Cache) Evict

func (c *Cache) Evict(key string) (errOut error)

Evict removes acquires a write lock and removes the cache entry for the given key.

Jump to

Keyboard shortcuts

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