mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-03-30 15:08:33 +00:00
23 lines
636 B
Go
23 lines
636 B
Go
package database
|
|
|
|
// Database defines the interface of a database that can begin
|
|
// transactions and close itself.
|
|
//
|
|
// Important: This is not part of the DataAccessor interface
|
|
// because the Transaction interface includes it. Were we to
|
|
// merge Database with DataAccessor, implementors of the
|
|
// Transaction interface would be forced to implement methods
|
|
// such as Begin and Close, which is undesirable.
|
|
type Database interface {
|
|
DataAccessor
|
|
|
|
// Begin begins a new database transaction.
|
|
Begin() (Transaction, error)
|
|
|
|
// Compact compacts the database instance.
|
|
Compact() error
|
|
|
|
// Close closes the database.
|
|
Close() error
|
|
}
|