summaryrefslogtreecommitdiff
path: root/vendor/codeberg.org/gruf/go-cache/v3/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/codeberg.org/gruf/go-cache/v3/README.md')
-rw-r--r--vendor/codeberg.org/gruf/go-cache/v3/README.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/vendor/codeberg.org/gruf/go-cache/v3/README.md b/vendor/codeberg.org/gruf/go-cache/v3/README.md
new file mode 100644
index 000000000..43004f3d8
--- /dev/null
+++ b/vendor/codeberg.org/gruf/go-cache/v3/README.md
@@ -0,0 +1,17 @@
+# go-cache
+
+Provides access to a simple yet flexible, performant TTL cache via the `Cache{}` interface and `cache.New()`. Under the hood this is returning a `ttl.Cache{}`.
+
+## ttl
+
+A TTL cache implementation with much of the inner workings exposed, designed to be used as a base for your own customizations, or used as-is. Access via the base package `cache.New()` is recommended in the latter case, to prevent accidental use of unsafe methods.
+
+## lookup
+
+`lookup.Cache` is an example of a more complex cache implementation using `ttl.Cache{}` as its underpinning. It provides caching of items under multiple keys.
+
+## result
+
+`result.Cache` is an example of a more complex cache implementation using `ttl.Cache{}` as its underpinning.
+
+It provides caching specifically of loadable struct types, with automatic keying by multiple different field members and caching of negative (error) values. All useful when wrapping, for example, a database. \ No newline at end of file