mirror of
https://github.com/status-im/nimbus-eth1.git
synced 2025-03-01 12:20:49 +00:00
* Extract `CoreDb` constructor helpers from `base.nim` into separate module why: This makes it easier to avoid circular imports. * Extract `Ledger` constructor helpers from `base.nim` into separate module why: Move `accounts_ledger.nim` file to sub-folder `backend`. That way the layout resembles that of the `core_db`.
Core database
Layout of CoreDb
descriptor objects
Objects dependence:
CoreDbRef -- Base descriptor
| | |
| | +--- CoreDbCtxRef -- Context descriptor
| | | | | |
| | | | | +--- CoreDbKvtRef -- Key-value table
| | | | |
| | | | +----- CoreDbMptRef -- Generic MPT
| | | |
| | | +------- CoreDbAccRef -- Accounts database
| | |
| | +--------- CoreDbTxRef -- Transaction handle
| |
| +----- CoreDbCtxRef
| : : : :
|
+------- CoreDbCtxRef
: : : :