Fabcoin Core  0.16.2
P2P Digital Currency
Public Types | Public Member Functions | Public Attributes | List of all members
dev::eth::detail::Change Struct Reference

An atomic state changelog entry. More...

#include <State.h>

Collaboration diagram for dev::eth::detail::Change:
[legend]

Public Types

enum  Kind : int {
  Balance, Storage, Nonce, Create,
  NewCode, 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...
 

Public Attributes

Kind kind
 The kind of the change. More...
 
Address address
 Changed account address. More...
 
u256 value
 Change value, e.g. balance, storage. More...
 
u256 key
 Storage key. Last because used only in one case. More...
 

Detailed Description

An atomic state changelog entry.

Definition at line 104 of file State.h.

Member Enumeration Documentation

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.

Nonce 

Account nonce was increased by 1.

Create 

Account was created (it was not existing before).

NewCode 

New code was added to an account (by "create" message execution).

Touch 

Account was touched for the first time.

Definition at line 106 of file State.h.

Constructor & Destructor Documentation

dev::eth::detail::Change::Change ( Kind  _kind,
Address const &  _addr,
u256 const &  _value = 0 
)
inline

Helper constructor to make change log update more readable.

Definition at line 135 of file State.h.

dev::eth::detail::Change::Change ( Address const &  _addr,
u256 const &  _key,
u256 const &  _value 
)
inline

Helper constructor especially for storage change log.

Definition at line 140 of file State.h.

Member Data Documentation

Address dev::eth::detail::Change::address

Changed account address.

Definition at line 130 of file State.h.

u256 dev::eth::detail::Change::key

Storage key. Last because used only in one case.

Definition at line 132 of file State.h.

Kind dev::eth::detail::Change::kind

The kind of the change.

Definition at line 129 of file State.h.

u256 dev::eth::detail::Change::value

Change value, e.g. balance, storage.

Definition at line 131 of file State.h.


The documentation for this struct was generated from the following file: