Documentation ¶
Index ¶
- type DepositCache
- func (dc *DepositCache) AllDeposits(ctx context.Context, beforeBlk *big.Int) []*ethpb.Deposit
- func (dc *DepositCache) DepositByPubkey(ctx context.Context, pubKey []byte) (*ethpb.Deposit, *big.Int)
- func (dc *DepositCache) DepositsNumberAndRootAtHeight(ctx context.Context, blockHeight *big.Int) (uint64, [32]byte)
- func (dc *DepositCache) InsertDeposit(ctx context.Context, d *ethpb.Deposit, blockNum *big.Int, index int, ...)
- func (dc *DepositCache) InsertPendingDeposit(ctx context.Context, d *ethpb.Deposit, blockNum *big.Int, index int, ...)
- func (dc *DepositCache) MarkPubkeyForChainstart(ctx context.Context, pubkey string)
- func (dc *DepositCache) PendingContainers(ctx context.Context, beforeBlk *big.Int) []*DepositContainer
- func (dc *DepositCache) PendingDeposits(ctx context.Context, beforeBlk *big.Int) []*ethpb.Deposit
- func (dc *DepositCache) PrunePendingDeposits(ctx context.Context, merkleTreeIndex int)
- func (dc *DepositCache) PubkeyInChainstart(ctx context.Context, pubkey string) bool
- func (dc *DepositCache) RemovePendingDeposit(ctx context.Context, d *ethpb.Deposit)
- type DepositContainer
- type DepositFetcher
- type PendingDepositsFetcher
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DepositCache ¶
type DepositCache struct {
// contains filtered or unexported fields
}
DepositCache stores all in-memory deposit objects. This stores all the deposit related data that is required by the beacon-node.
func NewDepositCache ¶
func NewDepositCache() *DepositCache
NewDepositCache instantiates a new deposit cache
func (*DepositCache) AllDeposits ¶
AllDeposits returns a list of deposits all historical deposits until the given block number (inclusive). If no block is specified then this method returns all historical deposits.
func (*DepositCache) DepositByPubkey ¶
func (dc *DepositCache) DepositByPubkey(ctx context.Context, pubKey []byte) (*ethpb.Deposit, *big.Int)
DepositByPubkey looks through historical deposits and finds one which contains a certain public key within its deposit data.
func (*DepositCache) DepositsNumberAndRootAtHeight ¶
func (dc *DepositCache) DepositsNumberAndRootAtHeight(ctx context.Context, blockHeight *big.Int) (uint64, [32]byte)
DepositsNumberAndRootAtHeight returns number of deposits made prior to blockheight and the root that corresponds to the latest deposit at that blockheight.
func (*DepositCache) InsertDeposit ¶
func (dc *DepositCache) InsertDeposit(ctx context.Context, d *ethpb.Deposit, blockNum *big.Int, index int, depositRoot [32]byte)
InsertDeposit into the database. If deposit or block number are nil then this method does nothing.
func (*DepositCache) InsertPendingDeposit ¶
func (dc *DepositCache) InsertPendingDeposit(ctx context.Context, d *ethpb.Deposit, blockNum *big.Int, index int, depositRoot [32]byte)
InsertPendingDeposit into the database. If deposit or block number are nil then this method does nothing.
func (*DepositCache) MarkPubkeyForChainstart ¶
func (dc *DepositCache) MarkPubkeyForChainstart(ctx context.Context, pubkey string)
MarkPubkeyForChainstart sets the pubkey deposit status to true.
func (*DepositCache) PendingContainers ¶
func (dc *DepositCache) PendingContainers(ctx context.Context, beforeBlk *big.Int) []*DepositContainer
PendingContainers returns a list of deposit containers until the given block number (inclusive).
func (*DepositCache) PendingDeposits ¶
PendingDeposits returns a list of deposits until the given block number (inclusive). If no block is specified then this method returns all pending deposits.
func (*DepositCache) PrunePendingDeposits ¶
func (dc *DepositCache) PrunePendingDeposits(ctx context.Context, merkleTreeIndex int)
PrunePendingDeposits removes any deposit which is older than the given deposit merkle tree index.
func (*DepositCache) PubkeyInChainstart ¶
func (dc *DepositCache) PubkeyInChainstart(ctx context.Context, pubkey string) bool
PubkeyInChainstart returns bool for whether the pubkey passed in has deposited.
func (*DepositCache) RemovePendingDeposit ¶
func (dc *DepositCache) RemovePendingDeposit(ctx context.Context, d *ethpb.Deposit)
RemovePendingDeposit from the database. The deposit is indexed by the Index. This method does nothing if deposit ptr is nil.
type DepositContainer ¶
type DepositContainer struct { Deposit *ethpb.Deposit Block *big.Int Index int // contains filtered or unexported fields }
DepositContainer object for holding the deposit and a reference to the block in which the deposit transaction was included in the proof of work chain.
type DepositFetcher ¶
type DepositFetcher interface { AllDeposits(ctx context.Context, beforeBlk *big.Int) []*ethpb.Deposit DepositByPubkey(ctx context.Context, pubKey []byte) (*ethpb.Deposit, *big.Int) DepositsNumberAndRootAtHeight(ctx context.Context, blockHeight *big.Int) (uint64, [32]byte) }
DepositFetcher defines a struct which can retrieve deposit information from a store.
type PendingDepositsFetcher ¶
type PendingDepositsFetcher interface {
PendingContainers(ctx context.Context, beforeBlk *big.Int) []*DepositContainer
}
PendingDepositsFetcher specifically outlines a struct that can retrieve deposits which have not yet been included in the chain.