Documentation ¶
Index ¶
- type Bucket
- func (bk *Bucket) Delete(k []byte) error
- func (bk *Bucket) Get(k []byte) (value []byte, err error)
- func (bk *Bucket) Insert(items []struct{ ... }) error
- func (bk *Bucket) InsertNX(items []struct{ ... }) error
- func (bk *Bucket) Items() (items []Item, err error)
- func (bk *Bucket) Map(do func(k, v []byte) error) error
- func (bk *Bucket) MapPrefix(do func(k, v []byte) error, pre []byte) error
- func (bk *Bucket) MapRange(do func(k, v []byte) error, min, max []byte) error
- func (bk *Bucket) NewPrefixScanner(pre []byte) *PrefixScanner
- func (bk *Bucket) NewRangeScanner(min, max []byte) *RangeScanner
- func (bk *Bucket) PrefixItems(pre []byte) (items []Item, err error)
- func (bk *Bucket) Put(k, v []byte) error
- func (bk *Bucket) PutNX(k, v []byte) error
- func (bk *Bucket) RangeItems(min []byte, max []byte) (items []Item, err error)
- type DB
- type Item
- type PrefixScanner
- func (ps *PrefixScanner) Count() (count int, err error)
- func (ps *PrefixScanner) ItemMapping() (map[string][]byte, error)
- func (ps *PrefixScanner) Items() (items []Item, err error)
- func (ps *PrefixScanner) Keys() (keys [][]byte, err error)
- func (ps *PrefixScanner) Map(do func(k, v []byte) error) error
- func (ps *PrefixScanner) Values() (values [][]byte, err error)
- type RangeScanner
- func (rs *RangeScanner) Count() (count int, err error)
- func (rs *RangeScanner) ItemMapping() (map[string][]byte, error)
- func (rs *RangeScanner) Items() (items []Item, err error)
- func (rs *RangeScanner) Keys() (keys [][]byte, err error)
- func (rs *RangeScanner) Map(do func(k, v []byte) error) error
- func (rs *RangeScanner) Values() (values [][]byte, err error)
- type Scanner
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Bucket ¶
type Bucket struct { Name []byte // contains filtered or unexported fields }
Bucket represents a collection of key/value pairs inside the database.
func (*Bucket) Insert ¶
Insert iterates over a slice of k/v pairs, putting each item in the bucket as part of a single transaction. For large insertions, be sure to pre-sort your items (by Key in byte-sorted order), which will result in much more efficient insertion times and storage costs.
func (*Bucket) InsertNX ¶
InsertNX (insert-if-not-exists) iterates over a slice of k/v pairs, putting each item in the bucket as part of a single transaction. Unlike Insert, however, InsertNX will not update the value for an existing key.
func (*Bucket) Items ¶
Items returns a slice of key/value pairs. Each k/v pair in the slice is of type Item (`struct{ Key, Value []byte }`).
func (*Bucket) NewPrefixScanner ¶
func (bk *Bucket) NewPrefixScanner(pre []byte) *PrefixScanner
NewPrefixScanner initializes a new prefix scanner.
func (*Bucket) NewRangeScanner ¶
func (bk *Bucket) NewRangeScanner(min, max []byte) *RangeScanner
NewRangeScanner initializes a new range scanner. It takes a `min` and a `max` key for specifying the range paramaters.
func (*Bucket) PrefixItems ¶
PrefixItems returns a slice of key/value pairs for all keys with a given prefix. Each k/v pair in the slice is of type Item (`struct{ Key, Value []byte }`).
type DB ¶
DB Type
A DB is a bolt database with convenience methods for working with buckets.
A DB embeds the exposed bolt.DB methods.
type PrefixScanner ¶
type PrefixScanner struct { BucketName []byte Prefix []byte // contains filtered or unexported fields }
A PrefixScanner scans a bucket for keys with a given prefix.
func (*PrefixScanner) Count ¶
func (ps *PrefixScanner) Count() (count int, err error)
Count returns a count of the keys with prefix.
func (*PrefixScanner) ItemMapping ¶
func (ps *PrefixScanner) ItemMapping() (map[string][]byte, error)
ItemMapping returns a map of key/value pairs for keys with prefix. This only works with buckets whose keys are byte-sliced strings.
func (*PrefixScanner) Items ¶
func (ps *PrefixScanner) Items() (items []Item, err error)
Items returns a slice of key/value pairs for keys with prefix.
func (*PrefixScanner) Keys ¶
func (ps *PrefixScanner) Keys() (keys [][]byte, err error)
Keys returns a slice of keys with prefix.
func (*PrefixScanner) Map ¶
func (ps *PrefixScanner) Map(do func(k, v []byte) error) error
Map applies `do` on each key/value pair for keys with prefix.
func (*PrefixScanner) Values ¶
func (ps *PrefixScanner) Values() (values [][]byte, err error)
Values returns a slice of values for keys with prefix.
type RangeScanner ¶
type RangeScanner struct { BucketName []byte Min []byte Max []byte // contains filtered or unexported fields }
A RangeScanner scans a bucket for keys within a given range.
func (*RangeScanner) Count ¶
func (rs *RangeScanner) Count() (count int, err error)
Count returns a count of the keys within the range.
func (*RangeScanner) ItemMapping ¶
func (rs *RangeScanner) ItemMapping() (map[string][]byte, error)
ItemMapping returns a map of key/value pairs for keys within the range. This only works with buckets whose keys are byte-sliced strings.
func (*RangeScanner) Items ¶
func (rs *RangeScanner) Items() (items []Item, err error)
Items returns a slice of key/value pairs for keys within the range. Note that the returned slice contains elements of type Item.
func (*RangeScanner) Keys ¶
func (rs *RangeScanner) Keys() (keys [][]byte, err error)
Keys returns a slice of keys within the range.
func (*RangeScanner) Map ¶
func (rs *RangeScanner) Map(do func(k, v []byte) error) error
Map applies `do` on each key/value pair for keys within range.
func (*RangeScanner) Values ¶
func (rs *RangeScanner) Values() (values [][]byte, err error)
Values returns a slice of values for keys within the range.
type Scanner ¶
type Scanner interface { // Map applies a func on each key/value pair scanned. Map(func(k, v []byte) error) error // Count returns a count of the scanned keys. Count() (int, error) // Keys returns a slice of the scanned keys. Keys() ([][]byte, error) // Values returns a slice of values from scanned keys. Values() ([][]byte, error) // Items returns a slice of k/v pairs from scanned keys. Items() ([]Item, error) // ItemMapping returns a mapping of k/v pairs from scanned keys. ItemMapping() (map[string][]byte, error) }
A Scanner implements methods for scanning a subset of keys in a bucket and retrieving data from or about those keys.