![]() |
Ethereum
PoC-8
The C++ Implementation of Ethereum
|
An atomic state changelog entry. More...
#include <State.h>
Public Types | |
| enum | Kind : int { Balance, Storage, StorageRoot, Nonce, Create, Code, Touch } |
Public Member Functions | |
| Change (Kind _kind, Address const &_addr, u256 const &_value=0) | |
| Helper constructor to make change log update more readable. More... | |
| Change (Address const &_addr, u256 const &_key, u256 const &_value) | |
| Helper constructor especially for storage change log. More... | |
| Change (Address const &_addr, u256 const &_value) | |
| Helper constructor for nonce change log. More... | |
| Change (Address const &_addr, bytes const &_oldCode) | |
| Helper constructor especially for new code change log. More... | |
Public Attributes | |
| Kind | kind |
| The kind of the change. More... | |
| Address | address |
| Changed account address. More... | |
| u256 | value |
| Change value, e.g. balance, storage and nonce. More... | |
| u256 | key |
| Storage key. Last because used only in one case. More... | |
| bytes | oldCode |
| Code overwritten by CREATE, empty except in case of address collision. More... | |
| enum dev::eth::Change::Kind : int |
| Enumerator | |
|---|---|
| Balance | Account balance changed. Change::value contains the amount the balance was increased by. |
| Storage | Account storage was modified. Change::key contains the storage key, Change::value the storage value. |
| StorageRoot | Account storage root was modified. Change::value contains the old account storage root. |
| Nonce | Account nonce was changed. |
| Create | Account was created (it was not existing before). |
| Code | New code was added to an account (by "create" message execution). |
| Touch | Account was touched for the first time. |
| u256 dev::eth::Change::key |
| bytes dev::eth::Change::oldCode |
| u256 dev::eth::Change::value |