Interface IActionContext
Contextual data determined by a transaction and a block. Passed to Execute(IActionContext) method.
Namespace: Libplanet.Action
Assembly: Libplanet.dll
Syntax
public interface IActionContext
Properties
| Improve this Doc View SourceBlockIndex
Block index of a transaction that an executed IAction belongs to.
Declaration
long BlockIndex { get; }
Property Value
Type | Description |
---|---|
Int64 |
Miner
Address of a block miner account.
Declaration
Address Miner { get; }
Property Value
Type | Description |
---|---|
Address |
PreviousStates
A null delta of states, which means it represents the states before IAction executes.
Although a IAccountStateDelta instance is immutable, it has several manipulative methods that returns new IAccountStateDelta instances with some "dirty" states. These kinds of dirty IAccountStateDelta instances can be returned by Execute(IActionContext) method.
Declaration
IAccountStateDelta PreviousStates { get; }
Property Value
Type | Description |
---|---|
IAccountStateDelta |
Random
An initialized pseudorandom number generator. Its seed (state) is determined by a block and a transaction, which is deterministic so that every node can replay the same action and then reproduce the same result, while neither a single block miner nor a single transaction signer can predict the result and cheat.
Declaration
IRandom Random { get; }
Property Value
Type | Description |
---|---|
IRandom | A random object that shares interface mostly equivalent to Random. |
Rehearsal
Whether an IAction is being executed during “rehearsal mode”, that there is nothing in PreviousStates.
Declaration
bool Rehearsal { get; }
Property Value
Type | Description |
---|---|
Boolean |
See Also
| Improve this Doc View SourceSigner
Declaration
Address Signer { get; }
Property Value
Type | Description |
---|---|
Address |