Documentation ¶
Overview ¶
Package checkpointoracle is a an on-chain light client checkpoint oracle.
Index ¶
- type CheckpointOracle
- func (oracle *CheckpointOracle) Contract() *contract.CheckpointOracle
- func (oracle *CheckpointOracle) ContractAddr() common.Address
- func (oracle *CheckpointOracle) LookupCheckpointEvents(blockLogs [][]*types.Log, section uint64, hash common.Hash) []*contract.CheckpointOracleNewCheckpointVote
- func (oracle *CheckpointOracle) RegisterCheckpoint(opts *bind.TransactOpts, index uint64, hash []byte, rnum *big.Int, ...) (*types.Transaction, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CheckpointOracle ¶
type CheckpointOracle struct {
// contains filtered or unexported fields
}
CheckpointOracle is a Go wrapper around an on-chain checkpoint oracle contract.
func NewCheckpointOracle ¶
func NewCheckpointOracle(contractAddr common.Address, backend bind.ContractBackend) (*CheckpointOracle, error)
NewCheckpointOracle binds checkpoint contract and returns a registrar instance.
func (*CheckpointOracle) Contract ¶
func (oracle *CheckpointOracle) Contract() *contract.CheckpointOracle
Contract returns the underlying contract instance.
func (*CheckpointOracle) ContractAddr ¶
func (oracle *CheckpointOracle) ContractAddr() common.Address
ContractAddr returns the address of contract.
func (*CheckpointOracle) LookupCheckpointEvents ¶
func (oracle *CheckpointOracle) LookupCheckpointEvents(blockLogs [][]*types.Log, section uint64, hash common.Hash) []*contract.CheckpointOracleNewCheckpointVote
LookupCheckpointEvents searches checkpoint event for specific section in the given log batches.
func (*CheckpointOracle) RegisterCheckpoint ¶
func (oracle *CheckpointOracle) RegisterCheckpoint(opts *bind.TransactOpts, index uint64, hash []byte, rnum *big.Int, rhash [64]byte, sigs [][]byte) (*types.Transaction, error)
RegisterCheckpoint registers the checkpoint with a batch of associated signatures that are collected off-chain and sorted by lexicographical order.
Notably all signatures given should be transformed to "ethereum style" which transforms v from 0/1 to 27/28 according to the yellow paper.