Documentation ¶
Overview ¶
Package state is a generated GoMock package.
Package state is a generated GoMock package.
Index ¶
- Constants
- Variables
- type Chain
- type CurrentStakers
- type Diff
- type MockChain
- func (m *MockChain) AddChain(arg0 *txs.Tx)
- func (m *MockChain) AddRewardUTXO(arg0 ids.ID, arg1 *avax.UTXO)
- func (m *MockChain) AddSubnet(arg0 *txs.Tx)
- func (m *MockChain) AddSubnetTransformation(arg0 *txs.Tx)
- func (m *MockChain) AddTx(arg0 *txs.Tx, arg1 status.Status)
- func (m *MockChain) AddUTXO(arg0 *avax.UTXO)
- func (m *MockChain) DeleteCurrentDelegator(arg0 *Staker)
- func (m *MockChain) DeleteCurrentValidator(arg0 *Staker)
- func (m *MockChain) DeletePendingDelegator(arg0 *Staker)
- func (m *MockChain) DeletePendingValidator(arg0 *Staker)
- func (m *MockChain) DeleteUTXO(arg0 ids.ID)
- func (m *MockChain) EXPECT() *MockChainMockRecorder
- func (m *MockChain) GetCurrentDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
- func (m *MockChain) GetCurrentStakerIterator() (StakerIterator, error)
- func (m *MockChain) GetCurrentSupply(arg0 ids.ID) (uint64, error)
- func (m *MockChain) GetCurrentValidator(arg0 ids.ID, arg1 ids.NodeID) (*Staker, error)
- func (m *MockChain) GetDelegateeReward(arg0 ids.ID, arg1 ids.NodeID) (uint64, error)
- func (m *MockChain) GetPendingDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
- func (m *MockChain) GetPendingStakerIterator() (StakerIterator, error)
- func (m *MockChain) GetPendingValidator(arg0 ids.ID, arg1 ids.NodeID) (*Staker, error)
- func (m *MockChain) GetSubnetOwner(arg0 ids.ID) (fx.Owner, error)
- func (m *MockChain) GetSubnetTransformation(arg0 ids.ID) (*txs.Tx, error)
- func (m *MockChain) GetTimestamp() time.Time
- func (m *MockChain) GetTx(arg0 ids.ID) (*txs.Tx, status.Status, error)
- func (m *MockChain) GetUTXO(arg0 ids.ID) (*avax.UTXO, error)
- func (m *MockChain) PutCurrentDelegator(arg0 *Staker)
- func (m *MockChain) PutCurrentValidator(arg0 *Staker)
- func (m *MockChain) PutPendingDelegator(arg0 *Staker)
- func (m *MockChain) PutPendingValidator(arg0 *Staker)
- func (m *MockChain) SetCurrentSupply(arg0 ids.ID, arg1 uint64)
- func (m *MockChain) SetDelegateeReward(arg0 ids.ID, arg1 ids.NodeID, arg2 uint64) error
- func (m *MockChain) SetSubnetOwner(arg0 ids.ID, arg1 fx.Owner)
- func (m *MockChain) SetTimestamp(arg0 time.Time)
- type MockChainMockRecorder
- func (mr *MockChainMockRecorder) AddChain(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) AddRewardUTXO(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) AddSubnet(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) AddSubnetTransformation(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) AddTx(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) AddUTXO(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) DeleteCurrentDelegator(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) DeleteCurrentValidator(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) DeletePendingDelegator(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) DeletePendingValidator(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) DeleteUTXO(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetCurrentDelegatorIterator(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetCurrentStakerIterator() *gomock.Call
- func (mr *MockChainMockRecorder) GetCurrentSupply(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetCurrentValidator(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetDelegateeReward(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetPendingDelegatorIterator(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetPendingStakerIterator() *gomock.Call
- func (mr *MockChainMockRecorder) GetPendingValidator(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetSubnetOwner(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetSubnetTransformation(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetTimestamp() *gomock.Call
- func (mr *MockChainMockRecorder) GetTx(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) GetUTXO(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) PutCurrentDelegator(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) PutCurrentValidator(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) PutPendingDelegator(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) PutPendingValidator(arg0 any) *gomock.Call
- func (mr *MockChainMockRecorder) SetCurrentSupply(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) SetDelegateeReward(arg0, arg1, arg2 any) *gomock.Call
- func (mr *MockChainMockRecorder) SetSubnetOwner(arg0, arg1 any) *gomock.Call
- func (mr *MockChainMockRecorder) SetTimestamp(arg0 any) *gomock.Call
- type MockDiff
- func (m *MockDiff) AddChain(arg0 *txs.Tx)
- func (m *MockDiff) AddRewardUTXO(arg0 ids.ID, arg1 *avax.UTXO)
- func (m *MockDiff) AddSubnet(arg0 *txs.Tx)
- func (m *MockDiff) AddSubnetTransformation(arg0 *txs.Tx)
- func (m *MockDiff) AddTx(arg0 *txs.Tx, arg1 status.Status)
- func (m *MockDiff) AddUTXO(arg0 *avax.UTXO)
- func (m *MockDiff) Apply(arg0 Chain) error
- func (m *MockDiff) DeleteCurrentDelegator(arg0 *Staker)
- func (m *MockDiff) DeleteCurrentValidator(arg0 *Staker)
- func (m *MockDiff) DeletePendingDelegator(arg0 *Staker)
- func (m *MockDiff) DeletePendingValidator(arg0 *Staker)
- func (m *MockDiff) DeleteUTXO(arg0 ids.ID)
- func (m *MockDiff) EXPECT() *MockDiffMockRecorder
- func (m *MockDiff) GetCurrentDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
- func (m *MockDiff) GetCurrentStakerIterator() (StakerIterator, error)
- func (m *MockDiff) GetCurrentSupply(arg0 ids.ID) (uint64, error)
- func (m *MockDiff) GetCurrentValidator(arg0 ids.ID, arg1 ids.NodeID) (*Staker, error)
- func (m *MockDiff) GetDelegateeReward(arg0 ids.ID, arg1 ids.NodeID) (uint64, error)
- func (m *MockDiff) GetPendingDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
- func (m *MockDiff) GetPendingStakerIterator() (StakerIterator, error)
- func (m *MockDiff) GetPendingValidator(arg0 ids.ID, arg1 ids.NodeID) (*Staker, error)
- func (m *MockDiff) GetSubnetOwner(arg0 ids.ID) (fx.Owner, error)
- func (m *MockDiff) GetSubnetTransformation(arg0 ids.ID) (*txs.Tx, error)
- func (m *MockDiff) GetTimestamp() time.Time
- func (m *MockDiff) GetTx(arg0 ids.ID) (*txs.Tx, status.Status, error)
- func (m *MockDiff) GetUTXO(arg0 ids.ID) (*avax.UTXO, error)
- func (m *MockDiff) PutCurrentDelegator(arg0 *Staker)
- func (m *MockDiff) PutCurrentValidator(arg0 *Staker)
- func (m *MockDiff) PutPendingDelegator(arg0 *Staker)
- func (m *MockDiff) PutPendingValidator(arg0 *Staker)
- func (m *MockDiff) SetCurrentSupply(arg0 ids.ID, arg1 uint64)
- func (m *MockDiff) SetDelegateeReward(arg0 ids.ID, arg1 ids.NodeID, arg2 uint64) error
- func (m *MockDiff) SetSubnetOwner(arg0 ids.ID, arg1 fx.Owner)
- func (m *MockDiff) SetTimestamp(arg0 time.Time)
- type MockDiffMockRecorder
- func (mr *MockDiffMockRecorder) AddChain(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) AddRewardUTXO(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) AddSubnet(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) AddSubnetTransformation(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) AddTx(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) AddUTXO(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) Apply(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) DeleteCurrentDelegator(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) DeleteCurrentValidator(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) DeletePendingDelegator(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) DeletePendingValidator(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) DeleteUTXO(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetCurrentDelegatorIterator(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetCurrentStakerIterator() *gomock.Call
- func (mr *MockDiffMockRecorder) GetCurrentSupply(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetCurrentValidator(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetDelegateeReward(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetPendingDelegatorIterator(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetPendingStakerIterator() *gomock.Call
- func (mr *MockDiffMockRecorder) GetPendingValidator(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetSubnetOwner(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetSubnetTransformation(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetTimestamp() *gomock.Call
- func (mr *MockDiffMockRecorder) GetTx(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) GetUTXO(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) PutCurrentDelegator(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) PutCurrentValidator(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) PutPendingDelegator(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) PutPendingValidator(arg0 any) *gomock.Call
- func (mr *MockDiffMockRecorder) SetCurrentSupply(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) SetDelegateeReward(arg0, arg1, arg2 any) *gomock.Call
- func (mr *MockDiffMockRecorder) SetSubnetOwner(arg0, arg1 any) *gomock.Call
- func (mr *MockDiffMockRecorder) SetTimestamp(arg0 any) *gomock.Call
- type MockStakerIterator
- type MockStakerIteratorMockRecorder
- type MockState
- func (m *MockState) Abort()
- func (m *MockState) AddChain(arg0 *txs.Tx)
- func (m *MockState) AddRewardUTXO(arg0 ids.ID, arg1 *avax.UTXO)
- func (m *MockState) AddStatelessBlock(arg0 block.Block)
- func (m *MockState) AddSubnet(arg0 *txs.Tx)
- func (m *MockState) AddSubnetTransformation(arg0 *txs.Tx)
- func (m *MockState) AddTx(arg0 *txs.Tx, arg1 status.Status)
- func (m *MockState) AddUTXO(arg0 *avax.UTXO)
- func (m *MockState) ApplyValidatorPublicKeyDiffs(arg0 context.Context, arg1 map[ids.NodeID]*validators.GetValidatorOutput, ...) error
- func (m *MockState) ApplyValidatorWeightDiffs(arg0 context.Context, arg1 map[ids.NodeID]*validators.GetValidatorOutput, ...) error
- func (m *MockState) Checksum() ids.ID
- func (m *MockState) Close() error
- func (m *MockState) Commit() error
- func (m *MockState) CommitBatch() (database.Batch, error)
- func (m *MockState) DeleteCurrentDelegator(arg0 *Staker)
- func (m *MockState) DeleteCurrentValidator(arg0 *Staker)
- func (m *MockState) DeletePendingDelegator(arg0 *Staker)
- func (m *MockState) DeletePendingValidator(arg0 *Staker)
- func (m *MockState) DeleteUTXO(arg0 ids.ID)
- func (m *MockState) EXPECT() *MockStateMockRecorder
- func (m *MockState) GetBlockIDAtHeight(arg0 uint64) (ids.ID, error)
- func (m *MockState) GetChains(arg0 ids.ID) ([]*txs.Tx, error)
- func (m *MockState) GetCurrentDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
- func (m *MockState) GetCurrentStakerIterator() (StakerIterator, error)
- func (m *MockState) GetCurrentSupply(arg0 ids.ID) (uint64, error)
- func (m *MockState) GetCurrentValidator(arg0 ids.ID, arg1 ids.NodeID) (*Staker, error)
- func (m *MockState) GetDelegateeReward(arg0 ids.ID, arg1 ids.NodeID) (uint64, error)
- func (m *MockState) GetLastAccepted() ids.ID
- func (m *MockState) GetPendingDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
- func (m *MockState) GetPendingStakerIterator() (StakerIterator, error)
- func (m *MockState) GetPendingValidator(arg0 ids.ID, arg1 ids.NodeID) (*Staker, error)
- func (m *MockState) GetRewardUTXOs(arg0 ids.ID) ([]*avax.UTXO, error)
- func (m *MockState) GetStartTime(arg0 ids.NodeID, arg1 ids.ID) (time.Time, error)
- func (m *MockState) GetStatelessBlock(arg0 ids.ID) (block.Block, error)
- func (m *MockState) GetSubnetOwner(arg0 ids.ID) (fx.Owner, error)
- func (m *MockState) GetSubnetTransformation(arg0 ids.ID) (*txs.Tx, error)
- func (m *MockState) GetSubnets() ([]*txs.Tx, error)
- func (m *MockState) GetTimestamp() time.Time
- func (m *MockState) GetTx(arg0 ids.ID) (*txs.Tx, status.Status, error)
- func (m *MockState) GetUTXO(arg0 ids.ID) (*avax.UTXO, error)
- func (m *MockState) GetUptime(arg0 ids.NodeID, arg1 ids.ID) (time.Duration, time.Time, error)
- func (m *MockState) PutCurrentDelegator(arg0 *Staker)
- func (m *MockState) PutCurrentValidator(arg0 *Staker)
- func (m *MockState) PutPendingDelegator(arg0 *Staker)
- func (m *MockState) PutPendingValidator(arg0 *Staker)
- func (m *MockState) SetCurrentSupply(arg0 ids.ID, arg1 uint64)
- func (m *MockState) SetDelegateeReward(arg0 ids.ID, arg1 ids.NodeID, arg2 uint64) error
- func (m *MockState) SetHeight(arg0 uint64)
- func (m *MockState) SetLastAccepted(arg0 ids.ID)
- func (m *MockState) SetSubnetOwner(arg0 ids.ID, arg1 fx.Owner)
- func (m *MockState) SetTimestamp(arg0 time.Time)
- func (m *MockState) SetUptime(arg0 ids.NodeID, arg1 ids.ID, arg2 time.Duration, arg3 time.Time) error
- func (m *MockState) UTXOIDs(arg0 []byte, arg1 ids.ID, arg2 int) ([]ids.ID, error)
- type MockStateMockRecorder
- func (mr *MockStateMockRecorder) Abort() *gomock.Call
- func (mr *MockStateMockRecorder) AddChain(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) AddRewardUTXO(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) AddStatelessBlock(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) AddSubnet(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) AddSubnetTransformation(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) AddTx(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) AddUTXO(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) ApplyValidatorPublicKeyDiffs(arg0, arg1, arg2, arg3 any) *gomock.Call
- func (mr *MockStateMockRecorder) ApplyValidatorWeightDiffs(arg0, arg1, arg2, arg3, arg4 any) *gomock.Call
- func (mr *MockStateMockRecorder) Checksum() *gomock.Call
- func (mr *MockStateMockRecorder) Close() *gomock.Call
- func (mr *MockStateMockRecorder) Commit() *gomock.Call
- func (mr *MockStateMockRecorder) CommitBatch() *gomock.Call
- func (mr *MockStateMockRecorder) DeleteCurrentDelegator(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) DeleteCurrentValidator(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) DeletePendingDelegator(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) DeletePendingValidator(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) DeleteUTXO(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetBlockIDAtHeight(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetChains(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetCurrentDelegatorIterator(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetCurrentStakerIterator() *gomock.Call
- func (mr *MockStateMockRecorder) GetCurrentSupply(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetCurrentValidator(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetDelegateeReward(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetLastAccepted() *gomock.Call
- func (mr *MockStateMockRecorder) GetPendingDelegatorIterator(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetPendingStakerIterator() *gomock.Call
- func (mr *MockStateMockRecorder) GetPendingValidator(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetRewardUTXOs(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetStartTime(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetStatelessBlock(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetSubnetOwner(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetSubnetTransformation(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetSubnets() *gomock.Call
- func (mr *MockStateMockRecorder) GetTimestamp() *gomock.Call
- func (mr *MockStateMockRecorder) GetTx(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetUTXO(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) GetUptime(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) PutCurrentDelegator(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) PutCurrentValidator(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) PutPendingDelegator(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) PutPendingValidator(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) SetCurrentSupply(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) SetDelegateeReward(arg0, arg1, arg2 any) *gomock.Call
- func (mr *MockStateMockRecorder) SetHeight(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) SetLastAccepted(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) SetSubnetOwner(arg0, arg1 any) *gomock.Call
- func (mr *MockStateMockRecorder) SetTimestamp(arg0 any) *gomock.Call
- func (mr *MockStateMockRecorder) SetUptime(arg0, arg1, arg2, arg3 any) *gomock.Call
- func (mr *MockStateMockRecorder) UTXOIDs(arg0, arg1, arg2 any) *gomock.Call
- type MockVersions
- type MockVersionsMockRecorder
- type PendingStakers
- type Staker
- type StakerDiffIterator
- type StakerIterator
- type Stakers
- type State
- type ValidatorWeightDiff
- type Versions
Constants ¶
const ( CodecVersion0Tag = "v0" CodecVersion0 uint16 = 0 CodecVersion1Tag = "v1" CodecVersion1 uint16 = 1 )
Variables ¶
var ( BlockIDPrefix = []byte("blockID") BlockPrefix = []byte("block") ValidatorsPrefix = []byte("validators") CurrentPrefix = []byte("current") PendingPrefix = []byte("pending") ValidatorPrefix = []byte("validator") DelegatorPrefix = []byte("delegator") SubnetValidatorPrefix = []byte("subnetValidator") SubnetDelegatorPrefix = []byte("subnetDelegator") ValidatorWeightDiffsPrefix = []byte("flatValidatorDiffs") ValidatorPublicKeyDiffsPrefix = []byte("flatPublicKeyDiffs") TxPrefix = []byte("tx") RewardUTXOsPrefix = []byte("rewardUTXOs") UTXOPrefix = []byte("utxo") SubnetPrefix = []byte("subnet") SubnetOwnerPrefix = []byte("subnetOwner") TransformedSubnetPrefix = []byte("transformedSubnet") SupplyPrefix = []byte("supply") ChainPrefix = []byte("chain") SingletonPrefix = []byte("singleton") TimestampKey = []byte("timestamp") CurrentSupplyKey = []byte("current supply") LastAcceptedKey = []byte("last accepted") HeightsIndexedKey = []byte("heights indexed") InitializedKey = []byte("initialized") )
var (
ErrMissingParentState = errors.New("missing parent state")
)
var MetadataCodec codec.Manager
Functions ¶
This section is empty.
Types ¶
type Chain ¶
type Chain interface { Stakers avax.UTXOAdder avax.UTXOGetter avax.UTXODeleter GetTimestamp() time.Time SetTimestamp(tm time.Time) GetCurrentSupply(subnetID ids.ID) (uint64, error) SetCurrentSupply(subnetID ids.ID, cs uint64) AddRewardUTXO(txID ids.ID, utxo *avax.UTXO) AddSubnet(createSubnetTx *txs.Tx) GetSubnetOwner(subnetID ids.ID) (fx.Owner, error) SetSubnetOwner(subnetID ids.ID, owner fx.Owner) GetSubnetTransformation(subnetID ids.ID) (*txs.Tx, error) AddSubnetTransformation(transformSubnetTx *txs.Tx) AddChain(createChainTx *txs.Tx) GetTx(txID ids.ID) (*txs.Tx, status.Status, error) AddTx(tx *txs.Tx, status status.Status) }
Chain collects all methods to manage the state of the chain for block execution.
type CurrentStakers ¶
type CurrentStakers interface { // GetCurrentValidator returns the [staker] describing the validator on // [subnetID] with [nodeID]. If the validator does not exist, // [database.ErrNotFound] is returned. GetCurrentValidator(subnetID ids.ID, nodeID ids.NodeID) (*Staker, error) // PutCurrentValidator adds the [staker] describing a validator to the // staker set. // // Invariant: [staker] is not currently a CurrentValidator PutCurrentValidator(staker *Staker) // DeleteCurrentValidator removes the [staker] describing a validator from // the staker set. // // Invariant: [staker] is currently a CurrentValidator DeleteCurrentValidator(staker *Staker) // SetDelegateeReward sets the accrued delegation rewards for [nodeID] on // [subnetID] to [amount]. SetDelegateeReward(subnetID ids.ID, nodeID ids.NodeID, amount uint64) error // GetDelegateeReward returns the accrued delegation rewards for [nodeID] on // [subnetID]. GetDelegateeReward(subnetID ids.ID, nodeID ids.NodeID) (uint64, error) // GetCurrentDelegatorIterator returns the delegators associated with the // validator on [subnetID] with [nodeID]. Delegators are sorted by their // removal from current staker set. GetCurrentDelegatorIterator(subnetID ids.ID, nodeID ids.NodeID) (StakerIterator, error) // PutCurrentDelegator adds the [staker] describing a delegator to the // staker set. // // Invariant: [staker] is not currently a CurrentDelegator PutCurrentDelegator(staker *Staker) // DeleteCurrentDelegator removes the [staker] describing a delegator from // the staker set. // // Invariant: [staker] is currently a CurrentDelegator DeleteCurrentDelegator(staker *Staker) // GetCurrentStakerIterator returns stakers in order of their removal from // the current staker set. GetCurrentStakerIterator() (StakerIterator, error) }
type MockChain ¶
type MockChain struct {
// contains filtered or unexported fields
}
MockChain is a mock of Chain interface.
func NewMockChain ¶
func NewMockChain(ctrl *gomock.Controller) *MockChain
NewMockChain creates a new mock instance.
func (*MockChain) AddRewardUTXO ¶
AddRewardUTXO mocks base method.
func (*MockChain) AddSubnetTransformation ¶
AddSubnetTransformation mocks base method.
func (*MockChain) DeleteCurrentDelegator ¶
DeleteCurrentDelegator mocks base method.
func (*MockChain) DeleteCurrentValidator ¶
DeleteCurrentValidator mocks base method.
func (*MockChain) DeletePendingDelegator ¶
DeletePendingDelegator mocks base method.
func (*MockChain) DeletePendingValidator ¶
DeletePendingValidator mocks base method.
func (*MockChain) DeleteUTXO ¶
DeleteUTXO mocks base method.
func (*MockChain) EXPECT ¶
func (m *MockChain) EXPECT() *MockChainMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockChain) GetCurrentDelegatorIterator ¶
func (m *MockChain) GetCurrentDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
GetCurrentDelegatorIterator mocks base method.
func (*MockChain) GetCurrentStakerIterator ¶
func (m *MockChain) GetCurrentStakerIterator() (StakerIterator, error)
GetCurrentStakerIterator mocks base method.
func (*MockChain) GetCurrentSupply ¶
GetCurrentSupply mocks base method.
func (*MockChain) GetCurrentValidator ¶
GetCurrentValidator mocks base method.
func (*MockChain) GetDelegateeReward ¶ added in v1.10.0
GetDelegateeReward mocks base method.
func (*MockChain) GetPendingDelegatorIterator ¶
func (m *MockChain) GetPendingDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
GetPendingDelegatorIterator mocks base method.
func (*MockChain) GetPendingStakerIterator ¶
func (m *MockChain) GetPendingStakerIterator() (StakerIterator, error)
GetPendingStakerIterator mocks base method.
func (*MockChain) GetPendingValidator ¶
GetPendingValidator mocks base method.
func (*MockChain) GetSubnetOwner ¶ added in v1.10.10
GetSubnetOwner mocks base method.
func (*MockChain) GetSubnetTransformation ¶
GetSubnetTransformation mocks base method.
func (*MockChain) GetTimestamp ¶
GetTimestamp mocks base method.
func (*MockChain) PutCurrentDelegator ¶
PutCurrentDelegator mocks base method.
func (*MockChain) PutCurrentValidator ¶
PutCurrentValidator mocks base method.
func (*MockChain) PutPendingDelegator ¶
PutPendingDelegator mocks base method.
func (*MockChain) PutPendingValidator ¶
PutPendingValidator mocks base method.
func (*MockChain) SetCurrentSupply ¶
SetCurrentSupply mocks base method.
func (*MockChain) SetDelegateeReward ¶ added in v1.10.0
SetDelegateeReward mocks base method.
func (*MockChain) SetSubnetOwner ¶ added in v1.10.13
SetSubnetOwner mocks base method.
func (*MockChain) SetTimestamp ¶
SetTimestamp mocks base method.
type MockChainMockRecorder ¶
type MockChainMockRecorder struct {
// contains filtered or unexported fields
}
MockChainMockRecorder is the mock recorder for MockChain.
func (*MockChainMockRecorder) AddChain ¶
func (mr *MockChainMockRecorder) AddChain(arg0 any) *gomock.Call
AddChain indicates an expected call of AddChain.
func (*MockChainMockRecorder) AddRewardUTXO ¶
func (mr *MockChainMockRecorder) AddRewardUTXO(arg0, arg1 any) *gomock.Call
AddRewardUTXO indicates an expected call of AddRewardUTXO.
func (*MockChainMockRecorder) AddSubnet ¶
func (mr *MockChainMockRecorder) AddSubnet(arg0 any) *gomock.Call
AddSubnet indicates an expected call of AddSubnet.
func (*MockChainMockRecorder) AddSubnetTransformation ¶
func (mr *MockChainMockRecorder) AddSubnetTransformation(arg0 any) *gomock.Call
AddSubnetTransformation indicates an expected call of AddSubnetTransformation.
func (*MockChainMockRecorder) AddTx ¶
func (mr *MockChainMockRecorder) AddTx(arg0, arg1 any) *gomock.Call
AddTx indicates an expected call of AddTx.
func (*MockChainMockRecorder) AddUTXO ¶
func (mr *MockChainMockRecorder) AddUTXO(arg0 any) *gomock.Call
AddUTXO indicates an expected call of AddUTXO.
func (*MockChainMockRecorder) DeleteCurrentDelegator ¶
func (mr *MockChainMockRecorder) DeleteCurrentDelegator(arg0 any) *gomock.Call
DeleteCurrentDelegator indicates an expected call of DeleteCurrentDelegator.
func (*MockChainMockRecorder) DeleteCurrentValidator ¶
func (mr *MockChainMockRecorder) DeleteCurrentValidator(arg0 any) *gomock.Call
DeleteCurrentValidator indicates an expected call of DeleteCurrentValidator.
func (*MockChainMockRecorder) DeletePendingDelegator ¶
func (mr *MockChainMockRecorder) DeletePendingDelegator(arg0 any) *gomock.Call
DeletePendingDelegator indicates an expected call of DeletePendingDelegator.
func (*MockChainMockRecorder) DeletePendingValidator ¶
func (mr *MockChainMockRecorder) DeletePendingValidator(arg0 any) *gomock.Call
DeletePendingValidator indicates an expected call of DeletePendingValidator.
func (*MockChainMockRecorder) DeleteUTXO ¶
func (mr *MockChainMockRecorder) DeleteUTXO(arg0 any) *gomock.Call
DeleteUTXO indicates an expected call of DeleteUTXO.
func (*MockChainMockRecorder) GetCurrentDelegatorIterator ¶
func (mr *MockChainMockRecorder) GetCurrentDelegatorIterator(arg0, arg1 any) *gomock.Call
GetCurrentDelegatorIterator indicates an expected call of GetCurrentDelegatorIterator.
func (*MockChainMockRecorder) GetCurrentStakerIterator ¶
func (mr *MockChainMockRecorder) GetCurrentStakerIterator() *gomock.Call
GetCurrentStakerIterator indicates an expected call of GetCurrentStakerIterator.
func (*MockChainMockRecorder) GetCurrentSupply ¶
func (mr *MockChainMockRecorder) GetCurrentSupply(arg0 any) *gomock.Call
GetCurrentSupply indicates an expected call of GetCurrentSupply.
func (*MockChainMockRecorder) GetCurrentValidator ¶
func (mr *MockChainMockRecorder) GetCurrentValidator(arg0, arg1 any) *gomock.Call
GetCurrentValidator indicates an expected call of GetCurrentValidator.
func (*MockChainMockRecorder) GetDelegateeReward ¶ added in v1.10.0
func (mr *MockChainMockRecorder) GetDelegateeReward(arg0, arg1 any) *gomock.Call
GetDelegateeReward indicates an expected call of GetDelegateeReward.
func (*MockChainMockRecorder) GetPendingDelegatorIterator ¶
func (mr *MockChainMockRecorder) GetPendingDelegatorIterator(arg0, arg1 any) *gomock.Call
GetPendingDelegatorIterator indicates an expected call of GetPendingDelegatorIterator.
func (*MockChainMockRecorder) GetPendingStakerIterator ¶
func (mr *MockChainMockRecorder) GetPendingStakerIterator() *gomock.Call
GetPendingStakerIterator indicates an expected call of GetPendingStakerIterator.
func (*MockChainMockRecorder) GetPendingValidator ¶
func (mr *MockChainMockRecorder) GetPendingValidator(arg0, arg1 any) *gomock.Call
GetPendingValidator indicates an expected call of GetPendingValidator.
func (*MockChainMockRecorder) GetSubnetOwner ¶ added in v1.10.10
func (mr *MockChainMockRecorder) GetSubnetOwner(arg0 any) *gomock.Call
GetSubnetOwner indicates an expected call of GetSubnetOwner.
func (*MockChainMockRecorder) GetSubnetTransformation ¶
func (mr *MockChainMockRecorder) GetSubnetTransformation(arg0 any) *gomock.Call
GetSubnetTransformation indicates an expected call of GetSubnetTransformation.
func (*MockChainMockRecorder) GetTimestamp ¶
func (mr *MockChainMockRecorder) GetTimestamp() *gomock.Call
GetTimestamp indicates an expected call of GetTimestamp.
func (*MockChainMockRecorder) GetTx ¶
func (mr *MockChainMockRecorder) GetTx(arg0 any) *gomock.Call
GetTx indicates an expected call of GetTx.
func (*MockChainMockRecorder) GetUTXO ¶
func (mr *MockChainMockRecorder) GetUTXO(arg0 any) *gomock.Call
GetUTXO indicates an expected call of GetUTXO.
func (*MockChainMockRecorder) PutCurrentDelegator ¶
func (mr *MockChainMockRecorder) PutCurrentDelegator(arg0 any) *gomock.Call
PutCurrentDelegator indicates an expected call of PutCurrentDelegator.
func (*MockChainMockRecorder) PutCurrentValidator ¶
func (mr *MockChainMockRecorder) PutCurrentValidator(arg0 any) *gomock.Call
PutCurrentValidator indicates an expected call of PutCurrentValidator.
func (*MockChainMockRecorder) PutPendingDelegator ¶
func (mr *MockChainMockRecorder) PutPendingDelegator(arg0 any) *gomock.Call
PutPendingDelegator indicates an expected call of PutPendingDelegator.
func (*MockChainMockRecorder) PutPendingValidator ¶
func (mr *MockChainMockRecorder) PutPendingValidator(arg0 any) *gomock.Call
PutPendingValidator indicates an expected call of PutPendingValidator.
func (*MockChainMockRecorder) SetCurrentSupply ¶
func (mr *MockChainMockRecorder) SetCurrentSupply(arg0, arg1 any) *gomock.Call
SetCurrentSupply indicates an expected call of SetCurrentSupply.
func (*MockChainMockRecorder) SetDelegateeReward ¶ added in v1.10.0
func (mr *MockChainMockRecorder) SetDelegateeReward(arg0, arg1, arg2 any) *gomock.Call
SetDelegateeReward indicates an expected call of SetDelegateeReward.
func (*MockChainMockRecorder) SetSubnetOwner ¶ added in v1.10.13
func (mr *MockChainMockRecorder) SetSubnetOwner(arg0, arg1 any) *gomock.Call
SetSubnetOwner indicates an expected call of SetSubnetOwner.
func (*MockChainMockRecorder) SetTimestamp ¶
func (mr *MockChainMockRecorder) SetTimestamp(arg0 any) *gomock.Call
SetTimestamp indicates an expected call of SetTimestamp.
type MockDiff ¶
type MockDiff struct {
// contains filtered or unexported fields
}
MockDiff is a mock of Diff interface.
func NewMockDiff ¶
func NewMockDiff(ctrl *gomock.Controller) *MockDiff
NewMockDiff creates a new mock instance.
func (*MockDiff) AddRewardUTXO ¶
AddRewardUTXO mocks base method.
func (*MockDiff) AddSubnetTransformation ¶
AddSubnetTransformation mocks base method.
func (*MockDiff) DeleteCurrentDelegator ¶
DeleteCurrentDelegator mocks base method.
func (*MockDiff) DeleteCurrentValidator ¶
DeleteCurrentValidator mocks base method.
func (*MockDiff) DeletePendingDelegator ¶
DeletePendingDelegator mocks base method.
func (*MockDiff) DeletePendingValidator ¶
DeletePendingValidator mocks base method.
func (*MockDiff) DeleteUTXO ¶
DeleteUTXO mocks base method.
func (*MockDiff) EXPECT ¶
func (m *MockDiff) EXPECT() *MockDiffMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockDiff) GetCurrentDelegatorIterator ¶
func (m *MockDiff) GetCurrentDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
GetCurrentDelegatorIterator mocks base method.
func (*MockDiff) GetCurrentStakerIterator ¶
func (m *MockDiff) GetCurrentStakerIterator() (StakerIterator, error)
GetCurrentStakerIterator mocks base method.
func (*MockDiff) GetCurrentSupply ¶
GetCurrentSupply mocks base method.
func (*MockDiff) GetCurrentValidator ¶
GetCurrentValidator mocks base method.
func (*MockDiff) GetDelegateeReward ¶ added in v1.10.0
GetDelegateeReward mocks base method.
func (*MockDiff) GetPendingDelegatorIterator ¶
func (m *MockDiff) GetPendingDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
GetPendingDelegatorIterator mocks base method.
func (*MockDiff) GetPendingStakerIterator ¶
func (m *MockDiff) GetPendingStakerIterator() (StakerIterator, error)
GetPendingStakerIterator mocks base method.
func (*MockDiff) GetPendingValidator ¶
GetPendingValidator mocks base method.
func (*MockDiff) GetSubnetOwner ¶ added in v1.10.10
GetSubnetOwner mocks base method.
func (*MockDiff) GetSubnetTransformation ¶
GetSubnetTransformation mocks base method.
func (*MockDiff) GetTimestamp ¶
GetTimestamp mocks base method.
func (*MockDiff) PutCurrentDelegator ¶
PutCurrentDelegator mocks base method.
func (*MockDiff) PutCurrentValidator ¶
PutCurrentValidator mocks base method.
func (*MockDiff) PutPendingDelegator ¶
PutPendingDelegator mocks base method.
func (*MockDiff) PutPendingValidator ¶
PutPendingValidator mocks base method.
func (*MockDiff) SetCurrentSupply ¶
SetCurrentSupply mocks base method.
func (*MockDiff) SetDelegateeReward ¶ added in v1.10.0
SetDelegateeReward mocks base method.
func (*MockDiff) SetSubnetOwner ¶ added in v1.10.13
SetSubnetOwner mocks base method.
func (*MockDiff) SetTimestamp ¶
SetTimestamp mocks base method.
type MockDiffMockRecorder ¶
type MockDiffMockRecorder struct {
// contains filtered or unexported fields
}
MockDiffMockRecorder is the mock recorder for MockDiff.
func (*MockDiffMockRecorder) AddChain ¶
func (mr *MockDiffMockRecorder) AddChain(arg0 any) *gomock.Call
AddChain indicates an expected call of AddChain.
func (*MockDiffMockRecorder) AddRewardUTXO ¶
func (mr *MockDiffMockRecorder) AddRewardUTXO(arg0, arg1 any) *gomock.Call
AddRewardUTXO indicates an expected call of AddRewardUTXO.
func (*MockDiffMockRecorder) AddSubnet ¶
func (mr *MockDiffMockRecorder) AddSubnet(arg0 any) *gomock.Call
AddSubnet indicates an expected call of AddSubnet.
func (*MockDiffMockRecorder) AddSubnetTransformation ¶
func (mr *MockDiffMockRecorder) AddSubnetTransformation(arg0 any) *gomock.Call
AddSubnetTransformation indicates an expected call of AddSubnetTransformation.
func (*MockDiffMockRecorder) AddTx ¶
func (mr *MockDiffMockRecorder) AddTx(arg0, arg1 any) *gomock.Call
AddTx indicates an expected call of AddTx.
func (*MockDiffMockRecorder) AddUTXO ¶
func (mr *MockDiffMockRecorder) AddUTXO(arg0 any) *gomock.Call
AddUTXO indicates an expected call of AddUTXO.
func (*MockDiffMockRecorder) Apply ¶
func (mr *MockDiffMockRecorder) Apply(arg0 any) *gomock.Call
Apply indicates an expected call of Apply.
func (*MockDiffMockRecorder) DeleteCurrentDelegator ¶
func (mr *MockDiffMockRecorder) DeleteCurrentDelegator(arg0 any) *gomock.Call
DeleteCurrentDelegator indicates an expected call of DeleteCurrentDelegator.
func (*MockDiffMockRecorder) DeleteCurrentValidator ¶
func (mr *MockDiffMockRecorder) DeleteCurrentValidator(arg0 any) *gomock.Call
DeleteCurrentValidator indicates an expected call of DeleteCurrentValidator.
func (*MockDiffMockRecorder) DeletePendingDelegator ¶
func (mr *MockDiffMockRecorder) DeletePendingDelegator(arg0 any) *gomock.Call
DeletePendingDelegator indicates an expected call of DeletePendingDelegator.
func (*MockDiffMockRecorder) DeletePendingValidator ¶
func (mr *MockDiffMockRecorder) DeletePendingValidator(arg0 any) *gomock.Call
DeletePendingValidator indicates an expected call of DeletePendingValidator.
func (*MockDiffMockRecorder) DeleteUTXO ¶
func (mr *MockDiffMockRecorder) DeleteUTXO(arg0 any) *gomock.Call
DeleteUTXO indicates an expected call of DeleteUTXO.
func (*MockDiffMockRecorder) GetCurrentDelegatorIterator ¶
func (mr *MockDiffMockRecorder) GetCurrentDelegatorIterator(arg0, arg1 any) *gomock.Call
GetCurrentDelegatorIterator indicates an expected call of GetCurrentDelegatorIterator.
func (*MockDiffMockRecorder) GetCurrentStakerIterator ¶
func (mr *MockDiffMockRecorder) GetCurrentStakerIterator() *gomock.Call
GetCurrentStakerIterator indicates an expected call of GetCurrentStakerIterator.
func (*MockDiffMockRecorder) GetCurrentSupply ¶
func (mr *MockDiffMockRecorder) GetCurrentSupply(arg0 any) *gomock.Call
GetCurrentSupply indicates an expected call of GetCurrentSupply.
func (*MockDiffMockRecorder) GetCurrentValidator ¶
func (mr *MockDiffMockRecorder) GetCurrentValidator(arg0, arg1 any) *gomock.Call
GetCurrentValidator indicates an expected call of GetCurrentValidator.
func (*MockDiffMockRecorder) GetDelegateeReward ¶ added in v1.10.0
func (mr *MockDiffMockRecorder) GetDelegateeReward(arg0, arg1 any) *gomock.Call
GetDelegateeReward indicates an expected call of GetDelegateeReward.
func (*MockDiffMockRecorder) GetPendingDelegatorIterator ¶
func (mr *MockDiffMockRecorder) GetPendingDelegatorIterator(arg0, arg1 any) *gomock.Call
GetPendingDelegatorIterator indicates an expected call of GetPendingDelegatorIterator.
func (*MockDiffMockRecorder) GetPendingStakerIterator ¶
func (mr *MockDiffMockRecorder) GetPendingStakerIterator() *gomock.Call
GetPendingStakerIterator indicates an expected call of GetPendingStakerIterator.
func (*MockDiffMockRecorder) GetPendingValidator ¶
func (mr *MockDiffMockRecorder) GetPendingValidator(arg0, arg1 any) *gomock.Call
GetPendingValidator indicates an expected call of GetPendingValidator.
func (*MockDiffMockRecorder) GetSubnetOwner ¶ added in v1.10.10
func (mr *MockDiffMockRecorder) GetSubnetOwner(arg0 any) *gomock.Call
GetSubnetOwner indicates an expected call of GetSubnetOwner.
func (*MockDiffMockRecorder) GetSubnetTransformation ¶
func (mr *MockDiffMockRecorder) GetSubnetTransformation(arg0 any) *gomock.Call
GetSubnetTransformation indicates an expected call of GetSubnetTransformation.
func (*MockDiffMockRecorder) GetTimestamp ¶
func (mr *MockDiffMockRecorder) GetTimestamp() *gomock.Call
GetTimestamp indicates an expected call of GetTimestamp.
func (*MockDiffMockRecorder) GetTx ¶
func (mr *MockDiffMockRecorder) GetTx(arg0 any) *gomock.Call
GetTx indicates an expected call of GetTx.
func (*MockDiffMockRecorder) GetUTXO ¶
func (mr *MockDiffMockRecorder) GetUTXO(arg0 any) *gomock.Call
GetUTXO indicates an expected call of GetUTXO.
func (*MockDiffMockRecorder) PutCurrentDelegator ¶
func (mr *MockDiffMockRecorder) PutCurrentDelegator(arg0 any) *gomock.Call
PutCurrentDelegator indicates an expected call of PutCurrentDelegator.
func (*MockDiffMockRecorder) PutCurrentValidator ¶
func (mr *MockDiffMockRecorder) PutCurrentValidator(arg0 any) *gomock.Call
PutCurrentValidator indicates an expected call of PutCurrentValidator.
func (*MockDiffMockRecorder) PutPendingDelegator ¶
func (mr *MockDiffMockRecorder) PutPendingDelegator(arg0 any) *gomock.Call
PutPendingDelegator indicates an expected call of PutPendingDelegator.
func (*MockDiffMockRecorder) PutPendingValidator ¶
func (mr *MockDiffMockRecorder) PutPendingValidator(arg0 any) *gomock.Call
PutPendingValidator indicates an expected call of PutPendingValidator.
func (*MockDiffMockRecorder) SetCurrentSupply ¶
func (mr *MockDiffMockRecorder) SetCurrentSupply(arg0, arg1 any) *gomock.Call
SetCurrentSupply indicates an expected call of SetCurrentSupply.
func (*MockDiffMockRecorder) SetDelegateeReward ¶ added in v1.10.0
func (mr *MockDiffMockRecorder) SetDelegateeReward(arg0, arg1, arg2 any) *gomock.Call
SetDelegateeReward indicates an expected call of SetDelegateeReward.
func (*MockDiffMockRecorder) SetSubnetOwner ¶ added in v1.10.13
func (mr *MockDiffMockRecorder) SetSubnetOwner(arg0, arg1 any) *gomock.Call
SetSubnetOwner indicates an expected call of SetSubnetOwner.
func (*MockDiffMockRecorder) SetTimestamp ¶
func (mr *MockDiffMockRecorder) SetTimestamp(arg0 any) *gomock.Call
SetTimestamp indicates an expected call of SetTimestamp.
type MockStakerIterator ¶
type MockStakerIterator struct {
// contains filtered or unexported fields
}
MockStakerIterator is a mock of StakerIterator interface.
func NewMockStakerIterator ¶
func NewMockStakerIterator(ctrl *gomock.Controller) *MockStakerIterator
NewMockStakerIterator creates a new mock instance.
func (*MockStakerIterator) EXPECT ¶
func (m *MockStakerIterator) EXPECT() *MockStakerIteratorMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockStakerIterator) Release ¶
func (m *MockStakerIterator) Release()
Release mocks base method.
func (*MockStakerIterator) Value ¶
func (m *MockStakerIterator) Value() *Staker
Value mocks base method.
type MockStakerIteratorMockRecorder ¶
type MockStakerIteratorMockRecorder struct {
// contains filtered or unexported fields
}
MockStakerIteratorMockRecorder is the mock recorder for MockStakerIterator.
func (*MockStakerIteratorMockRecorder) Next ¶
func (mr *MockStakerIteratorMockRecorder) Next() *gomock.Call
Next indicates an expected call of Next.
func (*MockStakerIteratorMockRecorder) Release ¶
func (mr *MockStakerIteratorMockRecorder) Release() *gomock.Call
Release indicates an expected call of Release.
func (*MockStakerIteratorMockRecorder) Value ¶
func (mr *MockStakerIteratorMockRecorder) Value() *gomock.Call
Value indicates an expected call of Value.
type MockState ¶
type MockState struct {
// contains filtered or unexported fields
}
MockState is a mock of State interface.
func NewMockState ¶
func NewMockState(ctrl *gomock.Controller) *MockState
NewMockState creates a new mock instance.
func (*MockState) AddRewardUTXO ¶
AddRewardUTXO mocks base method.
func (*MockState) AddStatelessBlock ¶
AddStatelessBlock mocks base method.
func (*MockState) AddSubnetTransformation ¶
AddSubnetTransformation mocks base method.
func (*MockState) ApplyValidatorPublicKeyDiffs ¶ added in v1.10.6
func (m *MockState) ApplyValidatorPublicKeyDiffs(arg0 context.Context, arg1 map[ids.NodeID]*validators.GetValidatorOutput, arg2, arg3 uint64) error
ApplyValidatorPublicKeyDiffs mocks base method.
func (*MockState) ApplyValidatorWeightDiffs ¶ added in v1.10.6
func (m *MockState) ApplyValidatorWeightDiffs(arg0 context.Context, arg1 map[ids.NodeID]*validators.GetValidatorOutput, arg2, arg3 uint64, arg4 ids.ID) error
ApplyValidatorWeightDiffs mocks base method.
func (*MockState) CommitBatch ¶
CommitBatch mocks base method.
func (*MockState) DeleteCurrentDelegator ¶
DeleteCurrentDelegator mocks base method.
func (*MockState) DeleteCurrentValidator ¶
DeleteCurrentValidator mocks base method.
func (*MockState) DeletePendingDelegator ¶
DeletePendingDelegator mocks base method.
func (*MockState) DeletePendingValidator ¶
DeletePendingValidator mocks base method.
func (*MockState) DeleteUTXO ¶
DeleteUTXO mocks base method.
func (*MockState) EXPECT ¶
func (m *MockState) EXPECT() *MockStateMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockState) GetBlockIDAtHeight ¶ added in v1.10.8
GetBlockIDAtHeight mocks base method.
func (*MockState) GetCurrentDelegatorIterator ¶
func (m *MockState) GetCurrentDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
GetCurrentDelegatorIterator mocks base method.
func (*MockState) GetCurrentStakerIterator ¶
func (m *MockState) GetCurrentStakerIterator() (StakerIterator, error)
GetCurrentStakerIterator mocks base method.
func (*MockState) GetCurrentSupply ¶
GetCurrentSupply mocks base method.
func (*MockState) GetCurrentValidator ¶
GetCurrentValidator mocks base method.
func (*MockState) GetDelegateeReward ¶ added in v1.10.0
GetDelegateeReward mocks base method.
func (*MockState) GetLastAccepted ¶
GetLastAccepted mocks base method.
func (*MockState) GetPendingDelegatorIterator ¶
func (m *MockState) GetPendingDelegatorIterator(arg0 ids.ID, arg1 ids.NodeID) (StakerIterator, error)
GetPendingDelegatorIterator mocks base method.
func (*MockState) GetPendingStakerIterator ¶
func (m *MockState) GetPendingStakerIterator() (StakerIterator, error)
GetPendingStakerIterator mocks base method.
func (*MockState) GetPendingValidator ¶
GetPendingValidator mocks base method.
func (*MockState) GetRewardUTXOs ¶
GetRewardUTXOs mocks base method.
func (*MockState) GetStartTime ¶
GetStartTime mocks base method.
func (*MockState) GetStatelessBlock ¶
GetStatelessBlock mocks base method.
func (*MockState) GetSubnetOwner ¶ added in v1.10.10
GetSubnetOwner mocks base method.
func (*MockState) GetSubnetTransformation ¶
GetSubnetTransformation mocks base method.
func (*MockState) GetSubnets ¶
GetSubnets mocks base method.
func (*MockState) GetTimestamp ¶
GetTimestamp mocks base method.
func (*MockState) PutCurrentDelegator ¶
PutCurrentDelegator mocks base method.
func (*MockState) PutCurrentValidator ¶
PutCurrentValidator mocks base method.
func (*MockState) PutPendingDelegator ¶
PutPendingDelegator mocks base method.
func (*MockState) PutPendingValidator ¶
PutPendingValidator mocks base method.
func (*MockState) SetCurrentSupply ¶
SetCurrentSupply mocks base method.
func (*MockState) SetDelegateeReward ¶ added in v1.10.0
SetDelegateeReward mocks base method.
func (*MockState) SetLastAccepted ¶
SetLastAccepted mocks base method.
func (*MockState) SetSubnetOwner ¶ added in v1.10.13
SetSubnetOwner mocks base method.
func (*MockState) SetTimestamp ¶
SetTimestamp mocks base method.
type MockStateMockRecorder ¶
type MockStateMockRecorder struct {
// contains filtered or unexported fields
}
MockStateMockRecorder is the mock recorder for MockState.
func (*MockStateMockRecorder) Abort ¶
func (mr *MockStateMockRecorder) Abort() *gomock.Call
Abort indicates an expected call of Abort.
func (*MockStateMockRecorder) AddChain ¶
func (mr *MockStateMockRecorder) AddChain(arg0 any) *gomock.Call
AddChain indicates an expected call of AddChain.
func (*MockStateMockRecorder) AddRewardUTXO ¶
func (mr *MockStateMockRecorder) AddRewardUTXO(arg0, arg1 any) *gomock.Call
AddRewardUTXO indicates an expected call of AddRewardUTXO.
func (*MockStateMockRecorder) AddStatelessBlock ¶
func (mr *MockStateMockRecorder) AddStatelessBlock(arg0 any) *gomock.Call
AddStatelessBlock indicates an expected call of AddStatelessBlock.
func (*MockStateMockRecorder) AddSubnet ¶
func (mr *MockStateMockRecorder) AddSubnet(arg0 any) *gomock.Call
AddSubnet indicates an expected call of AddSubnet.
func (*MockStateMockRecorder) AddSubnetTransformation ¶
func (mr *MockStateMockRecorder) AddSubnetTransformation(arg0 any) *gomock.Call
AddSubnetTransformation indicates an expected call of AddSubnetTransformation.
func (*MockStateMockRecorder) AddTx ¶
func (mr *MockStateMockRecorder) AddTx(arg0, arg1 any) *gomock.Call
AddTx indicates an expected call of AddTx.
func (*MockStateMockRecorder) AddUTXO ¶
func (mr *MockStateMockRecorder) AddUTXO(arg0 any) *gomock.Call
AddUTXO indicates an expected call of AddUTXO.
func (*MockStateMockRecorder) ApplyValidatorPublicKeyDiffs ¶ added in v1.10.6
func (mr *MockStateMockRecorder) ApplyValidatorPublicKeyDiffs(arg0, arg1, arg2, arg3 any) *gomock.Call
ApplyValidatorPublicKeyDiffs indicates an expected call of ApplyValidatorPublicKeyDiffs.
func (*MockStateMockRecorder) ApplyValidatorWeightDiffs ¶ added in v1.10.6
func (mr *MockStateMockRecorder) ApplyValidatorWeightDiffs(arg0, arg1, arg2, arg3, arg4 any) *gomock.Call
ApplyValidatorWeightDiffs indicates an expected call of ApplyValidatorWeightDiffs.
func (*MockStateMockRecorder) Checksum ¶ added in v1.10.4
func (mr *MockStateMockRecorder) Checksum() *gomock.Call
Checksum indicates an expected call of Checksum.
func (*MockStateMockRecorder) Close ¶
func (mr *MockStateMockRecorder) Close() *gomock.Call
Close indicates an expected call of Close.
func (*MockStateMockRecorder) Commit ¶
func (mr *MockStateMockRecorder) Commit() *gomock.Call
Commit indicates an expected call of Commit.
func (*MockStateMockRecorder) CommitBatch ¶
func (mr *MockStateMockRecorder) CommitBatch() *gomock.Call
CommitBatch indicates an expected call of CommitBatch.
func (*MockStateMockRecorder) DeleteCurrentDelegator ¶
func (mr *MockStateMockRecorder) DeleteCurrentDelegator(arg0 any) *gomock.Call
DeleteCurrentDelegator indicates an expected call of DeleteCurrentDelegator.
func (*MockStateMockRecorder) DeleteCurrentValidator ¶
func (mr *MockStateMockRecorder) DeleteCurrentValidator(arg0 any) *gomock.Call
DeleteCurrentValidator indicates an expected call of DeleteCurrentValidator.
func (*MockStateMockRecorder) DeletePendingDelegator ¶
func (mr *MockStateMockRecorder) DeletePendingDelegator(arg0 any) *gomock.Call
DeletePendingDelegator indicates an expected call of DeletePendingDelegator.
func (*MockStateMockRecorder) DeletePendingValidator ¶
func (mr *MockStateMockRecorder) DeletePendingValidator(arg0 any) *gomock.Call
DeletePendingValidator indicates an expected call of DeletePendingValidator.
func (*MockStateMockRecorder) DeleteUTXO ¶
func (mr *MockStateMockRecorder) DeleteUTXO(arg0 any) *gomock.Call
DeleteUTXO indicates an expected call of DeleteUTXO.
func (*MockStateMockRecorder) GetBlockIDAtHeight ¶ added in v1.10.8
func (mr *MockStateMockRecorder) GetBlockIDAtHeight(arg0 any) *gomock.Call
GetBlockIDAtHeight indicates an expected call of GetBlockIDAtHeight.
func (*MockStateMockRecorder) GetChains ¶
func (mr *MockStateMockRecorder) GetChains(arg0 any) *gomock.Call
GetChains indicates an expected call of GetChains.
func (*MockStateMockRecorder) GetCurrentDelegatorIterator ¶
func (mr *MockStateMockRecorder) GetCurrentDelegatorIterator(arg0, arg1 any) *gomock.Call
GetCurrentDelegatorIterator indicates an expected call of GetCurrentDelegatorIterator.
func (*MockStateMockRecorder) GetCurrentStakerIterator ¶
func (mr *MockStateMockRecorder) GetCurrentStakerIterator() *gomock.Call
GetCurrentStakerIterator indicates an expected call of GetCurrentStakerIterator.
func (*MockStateMockRecorder) GetCurrentSupply ¶
func (mr *MockStateMockRecorder) GetCurrentSupply(arg0 any) *gomock.Call
GetCurrentSupply indicates an expected call of GetCurrentSupply.
func (*MockStateMockRecorder) GetCurrentValidator ¶
func (mr *MockStateMockRecorder) GetCurrentValidator(arg0, arg1 any) *gomock.Call
GetCurrentValidator indicates an expected call of GetCurrentValidator.
func (*MockStateMockRecorder) GetDelegateeReward ¶ added in v1.10.0
func (mr *MockStateMockRecorder) GetDelegateeReward(arg0, arg1 any) *gomock.Call
GetDelegateeReward indicates an expected call of GetDelegateeReward.
func (*MockStateMockRecorder) GetLastAccepted ¶
func (mr *MockStateMockRecorder) GetLastAccepted() *gomock.Call
GetLastAccepted indicates an expected call of GetLastAccepted.
func (*MockStateMockRecorder) GetPendingDelegatorIterator ¶
func (mr *MockStateMockRecorder) GetPendingDelegatorIterator(arg0, arg1 any) *gomock.Call
GetPendingDelegatorIterator indicates an expected call of GetPendingDelegatorIterator.
func (*MockStateMockRecorder) GetPendingStakerIterator ¶
func (mr *MockStateMockRecorder) GetPendingStakerIterator() *gomock.Call
GetPendingStakerIterator indicates an expected call of GetPendingStakerIterator.
func (*MockStateMockRecorder) GetPendingValidator ¶
func (mr *MockStateMockRecorder) GetPendingValidator(arg0, arg1 any) *gomock.Call
GetPendingValidator indicates an expected call of GetPendingValidator.
func (*MockStateMockRecorder) GetRewardUTXOs ¶
func (mr *MockStateMockRecorder) GetRewardUTXOs(arg0 any) *gomock.Call
GetRewardUTXOs indicates an expected call of GetRewardUTXOs.
func (*MockStateMockRecorder) GetStartTime ¶
func (mr *MockStateMockRecorder) GetStartTime(arg0, arg1 any) *gomock.Call
GetStartTime indicates an expected call of GetStartTime.
func (*MockStateMockRecorder) GetStatelessBlock ¶
func (mr *MockStateMockRecorder) GetStatelessBlock(arg0 any) *gomock.Call
GetStatelessBlock indicates an expected call of GetStatelessBlock.
func (*MockStateMockRecorder) GetSubnetOwner ¶ added in v1.10.10
func (mr *MockStateMockRecorder) GetSubnetOwner(arg0 any) *gomock.Call
GetSubnetOwner indicates an expected call of GetSubnetOwner.
func (*MockStateMockRecorder) GetSubnetTransformation ¶
func (mr *MockStateMockRecorder) GetSubnetTransformation(arg0 any) *gomock.Call
GetSubnetTransformation indicates an expected call of GetSubnetTransformation.
func (*MockStateMockRecorder) GetSubnets ¶
func (mr *MockStateMockRecorder) GetSubnets() *gomock.Call
GetSubnets indicates an expected call of GetSubnets.
func (*MockStateMockRecorder) GetTimestamp ¶
func (mr *MockStateMockRecorder) GetTimestamp() *gomock.Call
GetTimestamp indicates an expected call of GetTimestamp.
func (*MockStateMockRecorder) GetTx ¶
func (mr *MockStateMockRecorder) GetTx(arg0 any) *gomock.Call
GetTx indicates an expected call of GetTx.
func (*MockStateMockRecorder) GetUTXO ¶
func (mr *MockStateMockRecorder) GetUTXO(arg0 any) *gomock.Call
GetUTXO indicates an expected call of GetUTXO.
func (*MockStateMockRecorder) GetUptime ¶
func (mr *MockStateMockRecorder) GetUptime(arg0, arg1 any) *gomock.Call
GetUptime indicates an expected call of GetUptime.
func (*MockStateMockRecorder) PutCurrentDelegator ¶
func (mr *MockStateMockRecorder) PutCurrentDelegator(arg0 any) *gomock.Call
PutCurrentDelegator indicates an expected call of PutCurrentDelegator.
func (*MockStateMockRecorder) PutCurrentValidator ¶
func (mr *MockStateMockRecorder) PutCurrentValidator(arg0 any) *gomock.Call
PutCurrentValidator indicates an expected call of PutCurrentValidator.
func (*MockStateMockRecorder) PutPendingDelegator ¶
func (mr *MockStateMockRecorder) PutPendingDelegator(arg0 any) *gomock.Call
PutPendingDelegator indicates an expected call of PutPendingDelegator.
func (*MockStateMockRecorder) PutPendingValidator ¶
func (mr *MockStateMockRecorder) PutPendingValidator(arg0 any) *gomock.Call
PutPendingValidator indicates an expected call of PutPendingValidator.
func (*MockStateMockRecorder) SetCurrentSupply ¶
func (mr *MockStateMockRecorder) SetCurrentSupply(arg0, arg1 any) *gomock.Call
SetCurrentSupply indicates an expected call of SetCurrentSupply.
func (*MockStateMockRecorder) SetDelegateeReward ¶ added in v1.10.0
func (mr *MockStateMockRecorder) SetDelegateeReward(arg0, arg1, arg2 any) *gomock.Call
SetDelegateeReward indicates an expected call of SetDelegateeReward.
func (*MockStateMockRecorder) SetHeight ¶
func (mr *MockStateMockRecorder) SetHeight(arg0 any) *gomock.Call
SetHeight indicates an expected call of SetHeight.
func (*MockStateMockRecorder) SetLastAccepted ¶
func (mr *MockStateMockRecorder) SetLastAccepted(arg0 any) *gomock.Call
SetLastAccepted indicates an expected call of SetLastAccepted.
func (*MockStateMockRecorder) SetSubnetOwner ¶ added in v1.10.13
func (mr *MockStateMockRecorder) SetSubnetOwner(arg0, arg1 any) *gomock.Call
SetSubnetOwner indicates an expected call of SetSubnetOwner.
func (*MockStateMockRecorder) SetTimestamp ¶
func (mr *MockStateMockRecorder) SetTimestamp(arg0 any) *gomock.Call
SetTimestamp indicates an expected call of SetTimestamp.
type MockVersions ¶
type MockVersions struct {
// contains filtered or unexported fields
}
MockVersions is a mock of Versions interface.
func NewMockVersions ¶
func NewMockVersions(ctrl *gomock.Controller) *MockVersions
NewMockVersions creates a new mock instance.
func (*MockVersions) EXPECT ¶
func (m *MockVersions) EXPECT() *MockVersionsMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockVersionsMockRecorder ¶
type MockVersionsMockRecorder struct {
// contains filtered or unexported fields
}
MockVersionsMockRecorder is the mock recorder for MockVersions.
type PendingStakers ¶
type PendingStakers interface { // GetPendingValidator returns the Staker describing the validator on // [subnetID] with [nodeID]. If the validator does not exist, // [database.ErrNotFound] is returned. GetPendingValidator(subnetID ids.ID, nodeID ids.NodeID) (*Staker, error) // PutPendingValidator adds the [staker] describing a validator to the // staker set. PutPendingValidator(staker *Staker) // DeletePendingValidator removes the [staker] describing a validator from // the staker set. DeletePendingValidator(staker *Staker) // GetPendingDelegatorIterator returns the delegators associated with the // validator on [subnetID] with [nodeID]. Delegators are sorted by their // removal from pending staker set. GetPendingDelegatorIterator(subnetID ids.ID, nodeID ids.NodeID) (StakerIterator, error) // PutPendingDelegator adds the [staker] describing a delegator to the // staker set. PutPendingDelegator(staker *Staker) // DeletePendingDelegator removes the [staker] describing a delegator from // the staker set. DeletePendingDelegator(staker *Staker) // GetPendingStakerIterator returns stakers in order of their removal from // the pending staker set. GetPendingStakerIterator() (StakerIterator, error) }
type Staker ¶
type Staker struct { TxID ids.ID NodeID ids.NodeID PublicKey *bls.PublicKey SubnetID ids.ID Weight uint64 StartTime time.Time EndTime time.Time PotentialReward uint64 // NextTime is the next time this staker will be moved from a validator set. // If the staker is in the pending validator set, NextTime will equal // StartTime. If the staker is in the current validator set, NextTime will // equal EndTime. NextTime time.Time // Priority specifies how to break ties between stakers with the same // NextTime. This ensures that stakers created by the same transaction type // are grouped together. The ordering of these groups is documented in // [priorities.go] and depends on if the stakers are in the pending or // current validator set. Priority txs.Priority }
Staker contains all information required to represent a validator or delegator in the current and pending validator sets. Invariant: Staker's size is bounded to prevent OOM DoS attacks.
func NewCurrentStaker ¶
func NewPendingStaker ¶
type StakerDiffIterator ¶
type StakerDiffIterator interface { Next() bool // Returns: // - The staker that is changing // - True if the staker is being added to the current staker set, false if // the staker is being removed from the current staker set Value() (*Staker, bool) Release() }
StakerDiffIterator is an iterator that iterates over the events that will be performed on the current staker set.
There are two event types affecting current staker set, removal of an existing staker and addition of a new staker from the pending set.
The ordering of operations is:
- Staker operations are performed in order of their [NextTime].
- If operations have the same [NextTime], stakers are first added to the current staker set, then removed.
- Further ties are broken by *Staker.Less(), returning the lesser staker first.
func NewStakerDiffIterator ¶
func NewStakerDiffIterator(currentIterator, pendingIterator StakerIterator) StakerDiffIterator
type StakerIterator ¶
type StakerIterator interface { // Next attempts to move the iterator to the next staker. It returns false // once there are no more stakers to return. Next() bool // Value returns the current staker. Value should only be called after a // call to Next which returned true. Value() *Staker // Release any resources associated with the iterator. This must be called // after the interator is no longer needed. Release() }
StakerIterator defines an interface for iterating over a set of stakers.
var EmptyIterator StakerIterator = emptyIterator{}
EmptyIterator contains no stakers.
func NewMaskedIterator ¶
func NewMaskedIterator(parentIterator StakerIterator, maskedStakers map[ids.ID]*Staker) StakerIterator
NewMaskedIterator returns a new iterator that skips the stakers in [parentIterator] that are present in [maskedStakers].
func NewMergedIterator ¶
func NewMergedIterator(stakers ...StakerIterator) StakerIterator
Returns an iterator that returns all of the elements of [stakers] in order.
func NewTreeIterator ¶
func NewTreeIterator(tree *btree.BTreeG[*Staker]) StakerIterator
NewTreeIterator returns a new iterator of the stakers in [tree] in ascending order. Note that it isn't safe to modify [tree] while iterating over it.
type Stakers ¶
type Stakers interface { CurrentStakers PendingStakers }
type State ¶
type State interface { Chain uptime.State avax.UTXOReader GetLastAccepted() ids.ID SetLastAccepted(blkID ids.ID) GetStatelessBlock(blockID ids.ID) (block.Block, error) // Invariant: [block] is an accepted block. AddStatelessBlock(block block.Block) GetBlockIDAtHeight(height uint64) (ids.ID, error) GetRewardUTXOs(txID ids.ID) ([]*avax.UTXO, error) GetSubnets() ([]*txs.Tx, error) GetChains(subnetID ids.ID) ([]*txs.Tx, error) // ApplyValidatorWeightDiffs iterates from [startHeight] towards the genesis // block until it has applied all of the diffs up to and including // [endHeight]. Applying the diffs modifies [validators]. // // Invariant: If attempting to generate the validator set for // [endHeight - 1], [validators] must initially contain the validator // weights for [startHeight]. // // Note: Because this function iterates towards the genesis, [startHeight] // will typically be greater than or equal to [endHeight]. If [startHeight] // is less than [endHeight], no diffs will be applied. ApplyValidatorWeightDiffs( ctx context.Context, validators map[ids.NodeID]*validators.GetValidatorOutput, startHeight uint64, endHeight uint64, subnetID ids.ID, ) error // ApplyValidatorPublicKeyDiffs iterates from [startHeight] towards the // genesis block until it has applied all of the diffs up to and including // [endHeight]. Applying the diffs modifies [validators]. // // Invariant: If attempting to generate the validator set for // [endHeight - 1], [validators] must initially contain the validator // weights for [startHeight]. // // Note: Because this function iterates towards the genesis, [startHeight] // will typically be greater than or equal to [endHeight]. If [startHeight] // is less than [endHeight], no diffs will be applied. ApplyValidatorPublicKeyDiffs( ctx context.Context, validators map[ids.NodeID]*validators.GetValidatorOutput, startHeight uint64, endHeight uint64, ) error SetHeight(height uint64) // Discard uncommitted changes to the database. Abort() // Commit changes to the base database. Commit() error // Returns a batch of unwritten changes that, when written, will commit all // pending changes to the base database. CommitBatch() (database.Batch, error) Checksum() ids.ID Close() error }
func New ¶
func New( db database.Database, genesisBytes []byte, metricsReg prometheus.Registerer, cfg *config.Config, execCfg *config.ExecutionConfig, ctx *snow.Context, metrics metrics.Metrics, rewards reward.Calculator, ) (State, error)