Documentation ¶
Overview ¶
Package namespace introduces a namespace Datastore Shim, which basically mounts the entire child datastore under a prefix.
Use the Wrap function to wrap a datastore with any Key prefix. For example:
import ( "fmt" ds "github.com/ipfs/go-datastore" nsds "github.com/ipfs/go-datastore/namespace" ) func main() { mp := ds.NewMapDatastore() ns := nsds.Wrap(mp, ds.NewKey("/foo/bar")) // in the Namespace Datastore: ns.Put(ds.NewKey("/beep"), "boop") v2, _ := ns.Get(ds.NewKey("/beep")) // v2 == "boop" // and, in the underlying MapDatastore: v3, _ := mp.Get(ds.NewKey("/foo/bar/beep")) // v3 == "boop" }
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func PrefixTransform ¶
func PrefixTransform(prefix ds.Key) ktds.KeyTransform
PrefixTransform constructs a KeyTransform with a pair of functions that add or remove the given prefix key.
Warning: will panic if prefix not found when it should be there. This is to avoid insidious data inconsistency errors.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.