1
0
Fork 0

Adding upstream version 1.0.0.

Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
Daniel Baumann 2025-05-18 14:17:55 +02:00
parent bc73131a12
commit 582ebf4048
Signed by: daniel
GPG key ID: FBB4F0E80A80222F
14 changed files with 1083 additions and 0 deletions

43
README.md Normal file
View file

@ -0,0 +1,43 @@
# cache
cache is a middleware that aim to have a transparent interface for a lot of cache implementations.
Use use many cache adapters, including memory and Memcache.
### Installation
go get code.forgejo.org/go-chi/cache
## Getting Help
```go
// Cache is the interface that operates the cache data.
type Cache interface {
// Put puts value into cache with key and expire time.
Put(key string, val any, timeout int64) error
// Get gets cached value by given key.
Get(key string) any
// Delete deletes cached value by given key.
Delete(key string) error
// Incr increases cached int-type value by given key as a counter.
Incr(key string) error
// Decr decreases cached int-type value by given key as a counter.
Decr(key string) error
// IsExist returns true if cached value exists.
IsExist(key string) bool
// Flush deletes all cached data.
Flush() error
// StartAndGC starts GC routine based on config string settings.
StartAndGC(opt Options) error
// Ping tests if the cache is alive
Ping() error
}
```
## Credits
This package is a modified version of [go-chi/cache](https://gitea.com/go-chi/cache) which is a modified version of [go-macaron/cache](https://github.com/go-macaron/cache).
## License
This project is under the Apache License, Version 2.0. See the [LICENSE](LICENSE) file for the full license text.