Package Exports
- ethereumjs-account
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (ethereumjs-account) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
SYNOPSIS
Implements schema and functions relating to accounts stored ethereum's state Trie
NOTE: this is different from ethereumjs-accounts which should be used if you want to key management and web3 sugar.
INSTALL
npm install ethereumjs-account
BROWSER
This module work with browserify
API
new Account([data])
Creates a new account object
data
- an account can be initialized with either abuffer
containing the RLP serialized account. Or anArray
of 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
- ABoolean
that defaults to false. Ifobject
is 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.