vaporyjs-account v2.0.2
SYNOPSIS
Implements schema and functions relating to accounts stored vapory's state Trie
NOTE: this is different from vaporyjs-accounts which should be used if you want to key management and web3 sugar.
INSTALL
npm install vaporyjs-account
BROWSER
This module work with browserify
API
new Account([data])
Creates a new account object
data- an account can be initialized with either abuffercontaining the RLP serialized account. Or anArrayof buffers relating to each of the account Properties, listed in order below. For example:
var raw = [
'0x02', //nonce
'0x0384', //balance
'0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421', //stateRoot
'0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470' //codeHash
];
var account = new Account(raw);Or lastly an Object containing the Properties of the account:
var raw = {
nonce: '',
balance: '0x03e7',
stateRoot: '0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421',
codeHash: '0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470'
};
var account = new Account(raw);For Object and Array each of the elements can either be a Buffer, hex String, Number, or an object with a toBuffer method such as Bignum.
Account Properties
nonce- The account's nonce.balance- The account's balance in wei.stateRoot- The stateRoot for the storage of the contract.codeHash- The hash of the code of the contract.
Account Methods
account.isEmpty()
Returns a Boolean determining if the account is empty.
account.isContract()
Returns a Boolean deteremining if the account is a contract.
account.serialize()
Returns the RLP serialization of the account as a Buffer.
account.toJSON([object])
Returns the account as JSON.
object- ABooleanthat defaults to false. Ifobjectis true then this will return anObject, else it will return anArray.
account.getCode(trie, cb)
Fetches the code from the trie.
trie- The trie storing the accounts.cb- The callback.
account.setCode(trie, code, cb)
Stores the code in the trie.
trie- The trie storing the accounts.code- ABuffer.cb- The callback.
account.getStorage(trie, key, cb)
Fetches key from the account's storage.
account.setStorage(trie, key, val, cb)
Stores a val at the key in the contract's storage.