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

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

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