Documentation
¶
Index ¶
- Constants
- Variables
- type Bucket
- type Cursor
- type DB
- type Error
- type RWTransaction
- func (t *RWTransaction) Commit() error
- func (t *RWTransaction) CreateBucket(name string) error
- func (t *RWTransaction) Delete(key []byte) error
- func (t *RWTransaction) DeleteBucket(b *Bucket) error
- func (t *RWTransaction) Put(name string, key []byte, value []byte) error
- func (t *RWTransaction) Rollback() error
- type Stat
- type Transaction
Constants ¶
const ( MaxKeySize = 0x8000 MaxDataSize = 0xffffffff )
const Version = 1
Variables ¶
var ( DatabaseNotOpenError = &Error{"db is not open", nil} DatabaseAlreadyOpenedError = &Error{"db already open", nil} TransactionInProgressError = &Error{"writable transaction is already in progress", nil} )
var ( InvalidError = &Error{"Invalid database", nil} VersionMismatchError = &Error{"version mismatch", nil} )
var ( InvalidTransactionError = &Error{"txn is invalid", nil} BucketAlreadyExistsError = &Error{"bucket already exists", nil} )
Functions ¶
This section is empty.
Types ¶
type Bucket ¶
type Bucket struct {
// contains filtered or unexported fields
}
type Cursor ¶
type Cursor struct {
// contains filtered or unexported fields
}
func (*Cursor) First ¶
First moves the cursor to the first item in the bucket and returns its key and data.
type DB ¶
func (*DB) Open ¶
Open opens a data file at the given path and initializes the database. If the file does not exist then it will be created automatically.
func (*DB) RWTransaction ¶
func (db *DB) RWTransaction() (*RWTransaction, error)
RWTransaction creates a read/write transaction. Only one read/write transaction is allowed at a time.
func (*DB) Transaction ¶
func (db *DB) Transaction() (*Transaction, error)
Transaction creates a read-only transaction. Multiple read-only transactions can be used concurrently.
type RWTransaction ¶
type RWTransaction struct {
Transaction
// contains filtered or unexported fields
}
RWTransaction represents a transaction that can read and write data. Only one read/write transaction can be active for a DB at a time.
func (*RWTransaction) Commit ¶
func (t *RWTransaction) Commit() error
func (*RWTransaction) CreateBucket ¶
func (t *RWTransaction) CreateBucket(name string) error
CreateBucket creates a new bucket.
func (*RWTransaction) Delete ¶
func (t *RWTransaction) Delete(key []byte) error
func (*RWTransaction) DeleteBucket ¶
func (t *RWTransaction) DeleteBucket(b *Bucket) error
DropBucket deletes a bucket.
func (*RWTransaction) Put ¶
func (t *RWTransaction) Put(name string, key []byte, value []byte) error
func (*RWTransaction) Rollback ¶
func (t *RWTransaction) Rollback() error
type Transaction ¶
type Transaction struct {
// contains filtered or unexported fields
}
func (*Transaction) Bucket ¶
func (t *Transaction) Bucket(name string) *Bucket
Bucket retrieves a bucket by name.
func (*Transaction) Close ¶
func (t *Transaction) Close() error
func (*Transaction) Cursor ¶
func (t *Transaction) Cursor(name string) *Cursor
Cursor creates a cursor associated with a given bucket.
func (*Transaction) DB ¶
func (t *Transaction) DB() *DB
func (*Transaction) Get ¶
func (t *Transaction) Get(name string, key []byte) []byte
Get retrieves the value for a key in a named bucket.
func (*Transaction) Stat ¶
func (t *Transaction) Stat(name string) *Stat
Stat returns information about a bucket's internal structure.