package main import ( "fmt" badger "github.com/dgraph-io/badger/v4" ) func BadgerGet(db *badger.DB, key []byte) (val *[]byte) { err := db.View(func(txn *badger.Txn) error { item, err := txn.Get(key) if err != nil { if err == badger.ErrKeyNotFound { err = nil val = nil } return err } err = item.Value(func(v []byte) error { val = &v return nil }) return err }) if err != nil { log.Fatal(fmt.Sprintf("Oh no! Something weird happened while reading data from the database. Reason: %s", err.Error())) } return } func BadgerSet(db *badger.DB, key, val []byte) { err := db.Update(func(txn *badger.Txn) error { return txn.Set(key, val) }) if err != nil { log.Fatal(fmt.Sprintf("Oh no! Something weird happened while writing data to the database. Reason: %s", err.Error())) } } func BadgerDelete(db *badger.DB, key []byte) { err := db.Update(func(txn *badger.Txn) error { return txn.Delete(key) }) if err != nil { log.Fatal(fmt.Sprintf("Oh no! Something weird happened while deleting data in the database. Reason: %s", err.Error())) } }