mirror of https://github.com/etcd-io/bbolt.git
parent
09dda9940c
commit
e05e34c332
|
@ -99,6 +99,7 @@ func (b *Bucket) Cursor() *Cursor {
|
||||||
|
|
||||||
// Bucket retrieves a nested bucket by name.
|
// Bucket retrieves a nested bucket by name.
|
||||||
// Returns nil if the bucket does not exist.
|
// Returns nil if the bucket does not exist.
|
||||||
|
// The bucket instance is only valid for the lifetime of the transaction.
|
||||||
func (b *Bucket) Bucket(name []byte) *Bucket {
|
func (b *Bucket) Bucket(name []byte) *Bucket {
|
||||||
if b.buckets != nil {
|
if b.buckets != nil {
|
||||||
if child := b.buckets[string(name)]; child != nil {
|
if child := b.buckets[string(name)]; child != nil {
|
||||||
|
@ -148,6 +149,7 @@ func (b *Bucket) openBucket(value []byte) *Bucket {
|
||||||
|
|
||||||
// CreateBucket creates a new bucket at the given key and returns the new bucket.
|
// CreateBucket creates a new bucket at the given key and returns the new bucket.
|
||||||
// Returns an error if the key already exists, if the bucket name is blank, or if the bucket name is too long.
|
// Returns an error if the key already exists, if the bucket name is blank, or if the bucket name is too long.
|
||||||
|
// The bucket instance is only valid for the lifetime of the transaction.
|
||||||
func (b *Bucket) CreateBucket(key []byte) (*Bucket, error) {
|
func (b *Bucket) CreateBucket(key []byte) (*Bucket, error) {
|
||||||
if b.tx.db == nil {
|
if b.tx.db == nil {
|
||||||
return nil, ErrTxClosed
|
return nil, ErrTxClosed
|
||||||
|
@ -192,6 +194,7 @@ func (b *Bucket) CreateBucket(key []byte) (*Bucket, error) {
|
||||||
|
|
||||||
// CreateBucketIfNotExists creates a new bucket if it doesn't already exist and returns a reference to it.
|
// CreateBucketIfNotExists creates a new bucket if it doesn't already exist and returns a reference to it.
|
||||||
// Returns an error if the bucket name is blank, or if the bucket name is too long.
|
// Returns an error if the bucket name is blank, or if the bucket name is too long.
|
||||||
|
// The bucket instance is only valid for the lifetime of the transaction.
|
||||||
func (b *Bucket) CreateBucketIfNotExists(key []byte) (*Bucket, error) {
|
func (b *Bucket) CreateBucketIfNotExists(key []byte) (*Bucket, error) {
|
||||||
child, err := b.CreateBucket(key)
|
child, err := b.CreateBucket(key)
|
||||||
if err == ErrBucketExists {
|
if err == ErrBucketExists {
|
||||||
|
|
3
tx.go
3
tx.go
|
@ -87,18 +87,21 @@ func (tx *Tx) Stats() TxStats {
|
||||||
|
|
||||||
// Bucket retrieves a bucket by name.
|
// Bucket retrieves a bucket by name.
|
||||||
// Returns nil if the bucket does not exist.
|
// Returns nil if the bucket does not exist.
|
||||||
|
// The bucket instance is only valid for the lifetime of the transaction.
|
||||||
func (tx *Tx) Bucket(name []byte) *Bucket {
|
func (tx *Tx) Bucket(name []byte) *Bucket {
|
||||||
return tx.root.Bucket(name)
|
return tx.root.Bucket(name)
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateBucket creates a new bucket.
|
// CreateBucket creates a new bucket.
|
||||||
// Returns an error if the bucket already exists, if the bucket name is blank, or if the bucket name is too long.
|
// Returns an error if the bucket already exists, if the bucket name is blank, or if the bucket name is too long.
|
||||||
|
// The bucket instance is only valid for the lifetime of the transaction.
|
||||||
func (tx *Tx) CreateBucket(name []byte) (*Bucket, error) {
|
func (tx *Tx) CreateBucket(name []byte) (*Bucket, error) {
|
||||||
return tx.root.CreateBucket(name)
|
return tx.root.CreateBucket(name)
|
||||||
}
|
}
|
||||||
|
|
||||||
// CreateBucketIfNotExists creates a new bucket if it doesn't already exist.
|
// CreateBucketIfNotExists creates a new bucket if it doesn't already exist.
|
||||||
// Returns an error if the bucket name is blank, or if the bucket name is too long.
|
// Returns an error if the bucket name is blank, or if the bucket name is too long.
|
||||||
|
// The bucket instance is only valid for the lifetime of the transaction.
|
||||||
func (tx *Tx) CreateBucketIfNotExists(name []byte) (*Bucket, error) {
|
func (tx *Tx) CreateBucketIfNotExists(name []byte) (*Bucket, error) {
|
||||||
return tx.root.CreateBucketIfNotExists(name)
|
return tx.root.CreateBucketIfNotExists(name)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue