states

package
v2.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 6, 2020 License: Apache-2.0, MIT Imports: 12 Imported by: 10

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckStateInvariants

func CheckStateInvariants(tree *Tree, expectedBalanceTotal abi.TokenAmount) (*builtin.MessageAccumulator, error)

func MinerEligibleForElection

func MinerEligibleForElection(store adt.Store, mstate *miner.State, pstate *power.State, maddr addr.Address, currEpoch abi.ChainEpoch) (bool, error)

Tests whether a miner is eligible to win an election given the immediately prior state of the miner and system actors.

func MinerPoStLookbackEligibleForElection

func MinerPoStLookbackEligibleForElection(store adt.Store, pstate *power.State, mAddr addr.Address) (bool, error)

Tests whether a miner is eligible for election given a Winning PoSt lookback state. The power state must be the state of the power actor at Winning PoSt lookback epoch.

Types

type Actor

type Actor = states0.Actor

Value type of the top level of the state tree. Represents the on-chain state of a single actor.

type Actor struct {
	Code       cid.Cid // CID representing the code associated with the actor
	Head       cid.Cid // CID of the head state object for the actor
	CallSeqNum uint64  // CallSeqNum for the next message to be received by the actor (non-zero for accounts only)
	Balance    big.Int // Token balance of the actor
}

type Tree

type Tree struct {
	Map   *adt.Map
	Store adt.Store
}

A specialization of a map of ID-addresses to actor heads.

func LoadTree

func LoadTree(s adt.Store, r cid.Cid) (*Tree, error)

Loads a tree from a root CID and store.

func NewTree

func NewTree(store adt.Store) (*Tree, error)

Initializes a new, empty state tree backed by a store.

func (*Tree) Flush

func (t *Tree) Flush() (cid.Cid, error)

Writes the tree root node to the store, and returns its CID.

func (*Tree) ForEach

func (t *Tree) ForEach(fn func(addr address.Address, actor *Actor) error) error

Traverses all entries in the tree.

func (*Tree) ForEachKey

func (t *Tree) ForEachKey(fn func(addr address.Address) error) error

Traverses all keys in the tree, without decoding the actor states.

func (*Tree) GetActor

func (t *Tree) GetActor(addr address.Address) (*Actor, bool, error)

Loads the state associated with an address.

func (*Tree) SetActor

func (t *Tree) SetActor(addr address.Address, actor *Actor) error

Sets the state associated with an address, overwriting if it already present.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL