UNPKG

@ocap/statedb-memory

Version:

OCAP statedb adapter that uses memory as backend statedb, just for test purpose

21 lines (16 loc) 665 B
const { ensureChecksumAddress } = require('@ocap/state/lib/states/account'); const MemoryStateDB = require('./base'); class AccountStateDB extends MemoryStateDB { async _get(address, { traceMigration = true } = {}) { const current = await super._get(ensureChecksumAddress(address)); if (current && traceMigration && Array.isArray(current.migratedTo) && current.migratedTo.length) { return this._get(current.migratedTo[0]); } return current; } _create(key, attrs = {}) { const address = ensureChecksumAddress(key); return super._create(address, { ...attrs, [this.uniqIndex]: address }); } } module.exports = AccountStateDB;