(fn func(k []byte) error)
| 596 | } |
| 597 | |
| 598 | func (b *Bucket) ForEachBucket(fn func(k []byte) error) error { |
| 599 | if b.tx.db == nil { |
| 600 | return errors.ErrTxClosed |
| 601 | } |
| 602 | c := b.Cursor() |
| 603 | for k, _, flags := c.first(); k != nil; k, _, flags = c.next() { |
| 604 | if flags&common.BucketLeafFlag != 0 { |
| 605 | if err := fn(k); err != nil { |
| 606 | return err |
| 607 | } |
| 608 | } |
| 609 | } |
| 610 | return nil |
| 611 | } |
| 612 | |
| 613 | // Stats returns stats on a bucket. |
| 614 | func (b *Bucket) Stats() BucketStats { |