Lockable memory storage for Go https://pkg.go.dev/github.com/annybs/go-registry

Aneurin Barker Snook 92c96c9507 add tests vor 1 Jahr
.github 92c96c9507 add tests vor 1 Jahr
.gitignore 1488b507e7 ensure go.sum not committed vor 1 Jahr
LICENSE.md f468c349ac duplicate license to each package vor 1 Jahr
README.md 97290b6abd fix link to license vor 1 Jahr
go.mod f76498ae62 rename package vor 1 Jahr
registry.go 85c166f101 add readme for each package vor 1 Jahr
registry_test.go 6b3a2377a7 add validation error type, fix tests, add number tests vor 1 Jahr

README.md

Go Registry

This package provides a simple registry implementation which allows storing arbitrary values in a memory map.

You can also lock specific keys to prevent them being written, even if no value has yet been set. Locked keys cannot be unlocked.

Example

package main

import (
	"fmt"

	"github.com/annybs/go/registry"
)

func main() {
	r := registry.New()

	r.Set("some key", "some text")
	fmt.Println(r.Get("some key"))

	r.Lock("some key")
	if err := r.Set("some key", "different text"); err != nil {
		fmt.Println(err)
	}
}

License

See LICENSE.md