module

package
v0.3.4 Latest Latest
Warning

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

Go to latest
Published: Sep 10, 2024 License: Apache-2.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

View Source
const Parlia string = "xx-parlia"

Parlia TODO client_type

Variables

View Source
var (
	ErrInvalidLengthConfig        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowConfig          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupConfig = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	ErrInvalidLengthParlia        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowParlia          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupParlia = fmt.Errorf("proto: unexpected end of group")
)
View Source
var IBCCommitmentsSlot = common.HexToHash("1ee222554989dda120e26ecacf756fe1235cd8d726706b57517715dde4f0c900")

keccak256(abi.encode(uint256(keccak256("ibc.commitment")) - 1)) & ~bytes32(uint256(0xff))

Functions

func GetCurrentEpoch

func GetCurrentEpoch(v uint64) uint64

func GetPreviousEpoch

func GetPreviousEpoch(v uint64) uint64

func MakeEpochHash

func MakeEpochHash(validators Validators, turnLength uint8) []byte

func NewProver

func NewProver(chain Chain, config *ProverConfig) core.Prover

Types

type BLSPublicKey

type BLSPublicKey [blsPublicKeyLength]byte

type BLSSignature

type BLSSignature [blsSignatureLength]byte

type Chain

type Chain interface {
	core.Chain
	Header(ctx context.Context, height uint64) (*types.Header, error)
	IBCAddress() common.Address
	CanonicalChainID(ctx context.Context) (uint64, error)
	GetProof(address common.Address, storageKeys [][]byte, blockNumber *big.Int) (*client.StateProof, error)
}

func NewChain

func NewChain(chain *ethereum.Chain) Chain

type ClientState

type ClientState struct {
	ChainId            uint64        `protobuf:"varint,1,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"`
	IbcStoreAddress    []byte        `protobuf:"bytes,2,opt,name=ibc_store_address,json=ibcStoreAddress,proto3" json:"ibc_store_address,omitempty"`
	IbcCommitmentsSlot []byte        `protobuf:"bytes,3,opt,name=ibc_commitments_slot,json=ibcCommitmentsSlot,proto3" json:"ibc_commitments_slot,omitempty"`
	LatestHeight       *types.Height `protobuf:"bytes,4,opt,name=latest_height,json=latestHeight,proto3" json:"latest_height,omitempty"`
	TrustingPeriod     time.Duration `protobuf:"bytes,5,opt,name=trusting_period,json=trustingPeriod,proto3,stdduration" json:"trusting_period"`
	MaxClockDrift      time.Duration `protobuf:"bytes,6,opt,name=max_clock_drift,json=maxClockDrift,proto3,stdduration" json:"max_clock_drift"`
	Frozen             bool          `protobuf:"varint,7,opt,name=frozen,proto3" json:"frozen,omitempty"`
}

func (*ClientState) CheckForMisbehaviour

func (cs *ClientState) CheckForMisbehaviour(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, clientMsg exported.ClientMessage) bool

func (*ClientState) CheckSubstituteAndUpdateState

func (cs *ClientState) CheckSubstituteAndUpdateState(ctx sdk.Context, cdc codec.BinaryCodec, subjectClientStore, substituteClientStore storetypes.KVStore, substituteCliente exported.ClientState) error

func (*ClientState) ClientType

func (cs *ClientState) ClientType() string

func (*ClientState) Descriptor

func (*ClientState) Descriptor() ([]byte, []int)

func (*ClientState) ExportMetadata

func (cs *ClientState) ExportMetadata(clientStore storetypes.KVStore) []exported.GenesisMetadata

func (*ClientState) GetLatestHeight

func (cs *ClientState) GetLatestHeight() exported.Height

func (*ClientState) GetTimestampAtHeight

func (cs *ClientState) GetTimestampAtHeight(
	ctx sdk.Context,
	clientStore storetypes.KVStore,
	cdc codec.BinaryCodec,
	height exported.Height,
) (uint64, error)

func (*ClientState) Initialize

func (cs *ClientState) Initialize(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, consensusState exported.ConsensusState) error

func (*ClientState) Marshal

func (m *ClientState) Marshal() (dAtA []byte, err error)

func (*ClientState) MarshalTo

func (m *ClientState) MarshalTo(dAtA []byte) (int, error)

func (*ClientState) MarshalToSizedBuffer

func (m *ClientState) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ClientState) ProtoMessage

func (*ClientState) ProtoMessage()

func (*ClientState) Reset

func (m *ClientState) Reset()

func (*ClientState) Size

func (m *ClientState) Size() (n int)

func (*ClientState) Status

func (cs *ClientState) Status(ctx sdk.Context, clientStore storetypes.KVStore, cdc codec.BinaryCodec) exported.Status

func (*ClientState) String

func (m *ClientState) String() string

func (*ClientState) Unmarshal

func (m *ClientState) Unmarshal(dAtA []byte) error

func (*ClientState) UpdateState

func (cs *ClientState) UpdateState(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, clientMsg exported.ClientMessage) []exported.Height

func (*ClientState) UpdateStateOnMisbehaviour

func (cs *ClientState) UpdateStateOnMisbehaviour(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, clientMsg exported.ClientMessage)

func (*ClientState) Validate

func (cs *ClientState) Validate() error

func (*ClientState) VerifyClientMessage

func (cs *ClientState) VerifyClientMessage(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, clientMsg exported.ClientMessage) error

func (*ClientState) VerifyMembership

func (cs *ClientState) VerifyMembership(
	ctx sdk.Context,
	clientStore storetypes.KVStore,
	cdc codec.BinaryCodec,
	height exported.Height,
	delayTimePeriod uint64,
	delayBlockPeriod uint64,
	proof []byte,
	path exported.Path,
	value []byte,
) error

func (*ClientState) VerifyNonMembership

func (cs *ClientState) VerifyNonMembership(
	ctx sdk.Context,
	clientStore storetypes.KVStore,
	cdc codec.BinaryCodec,
	height exported.Height,
	delayTimePeriod uint64,
	delayBlockPeriod uint64,
	proof []byte,
	path exported.Path,
) error

func (*ClientState) VerifyUpgradeAndUpdateState

func (cs *ClientState) VerifyUpgradeAndUpdateState(
	ctx sdk.Context,
	cdc codec.BinaryCodec,
	store storetypes.KVStore,
	newClient exported.ClientState,
	newConsState exported.ConsensusState,
	proofUpgradeClient,
	proofUpgradeConsState []byte,
) error

func (*ClientState) XXX_DiscardUnknown

func (m *ClientState) XXX_DiscardUnknown()

func (*ClientState) XXX_Marshal

func (m *ClientState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ClientState) XXX_Merge

func (m *ClientState) XXX_Merge(src proto.Message)

func (*ClientState) XXX_Size

func (m *ClientState) XXX_Size() int

func (*ClientState) XXX_Unmarshal

func (m *ClientState) XXX_Unmarshal(b []byte) error

func (*ClientState) ZeroCustomFields

func (cs *ClientState) ZeroCustomFields() exported.ClientState

type ConsensusState

type ConsensusState struct {
	StateRoot              []byte `protobuf:"bytes,1,opt,name=state_root,json=stateRoot,proto3" json:"state_root,omitempty"`
	Timestamp              uint64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	CurrentValidatorsHash  []byte `` /* 126-byte string literal not displayed */
	PreviousValidatorsHash []byte `` /* 129-byte string literal not displayed */
}

func (*ConsensusState) ClientType

func (cs *ConsensusState) ClientType() string

ClientType returns mock-client type.

func (*ConsensusState) Descriptor

func (*ConsensusState) Descriptor() ([]byte, []int)

func (*ConsensusState) GetTimestamp

func (cs *ConsensusState) GetTimestamp() uint64

func (*ConsensusState) Marshal

func (m *ConsensusState) Marshal() (dAtA []byte, err error)

func (*ConsensusState) MarshalTo

func (m *ConsensusState) MarshalTo(dAtA []byte) (int, error)

func (*ConsensusState) MarshalToSizedBuffer

func (m *ConsensusState) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ConsensusState) ProtoMessage

func (*ConsensusState) ProtoMessage()

func (*ConsensusState) Reset

func (m *ConsensusState) Reset()

func (*ConsensusState) Size

func (m *ConsensusState) Size() (n int)

func (*ConsensusState) String

func (m *ConsensusState) String() string

func (*ConsensusState) Unmarshal

func (m *ConsensusState) Unmarshal(dAtA []byte) error

func (*ConsensusState) ValidateBasic

func (cs *ConsensusState) ValidateBasic() error

ValidateBasic defines basic validation for the mock-client consensus state.

func (*ConsensusState) XXX_DiscardUnknown

func (m *ConsensusState) XXX_DiscardUnknown()

func (*ConsensusState) XXX_Marshal

func (m *ConsensusState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ConsensusState) XXX_Merge

func (m *ConsensusState) XXX_Merge(src proto.Message)

func (*ConsensusState) XXX_Size

func (m *ConsensusState) XXX_Size() int

func (*ConsensusState) XXX_Unmarshal

func (m *ConsensusState) XXX_Unmarshal(b []byte) error

type ETHHeader

type ETHHeader struct {
	Header []byte `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
}

func QueryFinalizedHeader

func QueryFinalizedHeader(fn getHeaderFn, height uint64, limitHeight uint64) ([]*ETHHeader, error)

func (*ETHHeader) Descriptor

func (*ETHHeader) Descriptor() ([]byte, []int)

func (*ETHHeader) Marshal

func (m *ETHHeader) Marshal() (dAtA []byte, err error)

func (*ETHHeader) MarshalTo

func (m *ETHHeader) MarshalTo(dAtA []byte) (int, error)

func (*ETHHeader) MarshalToSizedBuffer

func (m *ETHHeader) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ETHHeader) ProtoMessage

func (*ETHHeader) ProtoMessage()

func (*ETHHeader) Reset

func (m *ETHHeader) Reset()

func (*ETHHeader) Size

func (m *ETHHeader) Size() (n int)

func (*ETHHeader) String

func (m *ETHHeader) String() string

func (*ETHHeader) Unmarshal

func (m *ETHHeader) Unmarshal(dAtA []byte) error

func (*ETHHeader) XXX_DiscardUnknown

func (m *ETHHeader) XXX_DiscardUnknown()

func (*ETHHeader) XXX_Marshal

func (m *ETHHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ETHHeader) XXX_Merge

func (m *ETHHeader) XXX_Merge(src proto.Message)

func (*ETHHeader) XXX_Size

func (m *ETHHeader) XXX_Size() int

func (*ETHHeader) XXX_Unmarshal

func (m *ETHHeader) XXX_Unmarshal(b []byte) error

type Fraction

type Fraction struct {
	Numerator   uint64 `protobuf:"varint,1,opt,name=numerator,proto3" json:"numerator,omitempty"`
	Denominator uint64 `protobuf:"varint,2,opt,name=denominator,proto3" json:"denominator,omitempty"`
}

func (*Fraction) Descriptor

func (*Fraction) Descriptor() ([]byte, []int)

func (*Fraction) GetDenominator

func (m *Fraction) GetDenominator() uint64

func (*Fraction) GetNumerator

func (m *Fraction) GetNumerator() uint64

func (*Fraction) Marshal

func (m *Fraction) Marshal() (dAtA []byte, err error)

func (*Fraction) MarshalTo

func (m *Fraction) MarshalTo(dAtA []byte) (int, error)

func (*Fraction) MarshalToSizedBuffer

func (m *Fraction) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Fraction) ProtoMessage

func (*Fraction) ProtoMessage()

func (*Fraction) Reset

func (m *Fraction) Reset()

func (*Fraction) Size

func (m *Fraction) Size() (n int)

func (*Fraction) String

func (m *Fraction) String() string

func (*Fraction) Unmarshal

func (m *Fraction) Unmarshal(dAtA []byte) error

func (*Fraction) XXX_DiscardUnknown

func (m *Fraction) XXX_DiscardUnknown()

func (*Fraction) XXX_Marshal

func (m *Fraction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Fraction) XXX_Merge

func (m *Fraction) XXX_Merge(src proto.Message)

func (*Fraction) XXX_Size

func (m *Fraction) XXX_Size() int

func (*Fraction) XXX_Unmarshal

func (m *Fraction) XXX_Unmarshal(b []byte) error
type Header struct {
	Headers            []*ETHHeader  `protobuf:"bytes,1,rep,name=headers,proto3" json:"headers,omitempty"`
	TrustedHeight      *types.Height `protobuf:"bytes,2,opt,name=trusted_height,json=trustedHeight,proto3" json:"trusted_height,omitempty"`
	AccountProof       []byte        `protobuf:"bytes,3,opt,name=account_proof,json=accountProof,proto3" json:"account_proof,omitempty"`
	CurrentValidators  [][]byte      `protobuf:"bytes,4,rep,name=current_validators,json=currentValidators,proto3" json:"current_validators,omitempty"`
	PreviousValidators [][]byte      `protobuf:"bytes,5,rep,name=previous_validators,json=previousValidators,proto3" json:"previous_validators,omitempty"`
	CurrentTurnLength  uint32        `protobuf:"varint,6,opt,name=current_turn_length,json=currentTurnLength,proto3" json:"current_turn_length,omitempty"`
	PreviousTurnLength uint32        `protobuf:"varint,7,opt,name=previous_turn_length,json=previousTurnLength,proto3" json:"previous_turn_length,omitempty"`
}

func (*Header) Account

func (h *Header) Account(path common.Address) (*types.StateAccount, error)

func (*Header) ClientType

func (*Header) ClientType() string

func (*Header) Descriptor

func (*Header) Descriptor() ([]byte, []int)

func (*Header) GetHeight

func (h *Header) GetHeight() exported.Height

func (*Header) Last

func (h *Header) Last() (*types.Header, error)

func (*Header) Marshal

func (m *Header) Marshal() (dAtA []byte, err error)

func (*Header) MarshalTo

func (m *Header) MarshalTo(dAtA []byte) (int, error)

func (*Header) MarshalToSizedBuffer

func (m *Header) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Header) ProtoMessage

func (*Header) ProtoMessage()

func (*Header) Reset

func (m *Header) Reset()

func (*Header) Size

func (m *Header) Size() (n int)

func (*Header) String

func (m *Header) String() string

func (*Header) Target

func (h *Header) Target() (*types.Header, error)

func (*Header) Unmarshal

func (m *Header) Unmarshal(dAtA []byte) error

func (*Header) ValidateBasic

func (h *Header) ValidateBasic() error

func (*Header) XXX_DiscardUnknown

func (m *Header) XXX_DiscardUnknown()

func (*Header) XXX_Marshal

func (m *Header) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Header) XXX_Merge

func (m *Header) XXX_Merge(src proto.Message)

func (*Header) XXX_Size

func (m *Header) XXX_Size() int

func (*Header) XXX_Unmarshal

func (m *Header) XXX_Unmarshal(b []byte) error

type Misbehaviour

type Misbehaviour struct {
	ClientId string  `protobuf:"bytes,1,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	Header_1 *Header `protobuf:"bytes,2,opt,name=header_1,json=header1,proto3" json:"header_1,omitempty"`
	Header_2 *Header `protobuf:"bytes,3,opt,name=header_2,json=header2,proto3" json:"header_2,omitempty"`
}

func (*Misbehaviour) ClientType

func (*Misbehaviour) ClientType() string

func (*Misbehaviour) Descriptor

func (*Misbehaviour) Descriptor() ([]byte, []int)

func (*Misbehaviour) GetClientID

func (h *Misbehaviour) GetClientID() string

func (*Misbehaviour) Marshal

func (m *Misbehaviour) Marshal() (dAtA []byte, err error)

func (*Misbehaviour) MarshalTo

func (m *Misbehaviour) MarshalTo(dAtA []byte) (int, error)

func (*Misbehaviour) MarshalToSizedBuffer

func (m *Misbehaviour) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Misbehaviour) ProtoMessage

func (*Misbehaviour) ProtoMessage()

func (*Misbehaviour) Reset

func (m *Misbehaviour) Reset()

func (*Misbehaviour) Size

func (m *Misbehaviour) Size() (n int)

func (*Misbehaviour) String

func (m *Misbehaviour) String() string

func (*Misbehaviour) Unmarshal

func (m *Misbehaviour) Unmarshal(dAtA []byte) error

func (*Misbehaviour) ValidateBasic

func (h *Misbehaviour) ValidateBasic() error

func (*Misbehaviour) XXX_DiscardUnknown

func (m *Misbehaviour) XXX_DiscardUnknown()

func (*Misbehaviour) XXX_Marshal

func (m *Misbehaviour) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Misbehaviour) XXX_Merge

func (m *Misbehaviour) XXX_Merge(src proto.Message)

func (*Misbehaviour) XXX_Size

func (m *Misbehaviour) XXX_Size() int

func (*Misbehaviour) XXX_Unmarshal

func (m *Misbehaviour) XXX_Unmarshal(b []byte) error

type Module

type Module struct{}

func (Module) GetCmd

func (Module) GetCmd(ctx *config.Context) *cobra.Command

GetCmd returns the command

func (Module) Name

func (Module) Name() string

Name returns the name of the module

func (Module) RegisterInterfaces

func (Module) RegisterInterfaces(registry codectypes.InterfaceRegistry)

RegisterInterfaces register the module interfaces to protobuf Any.

type Prover

type Prover struct {
	// contains filtered or unexported fields
}

func (*Prover) CheckRefreshRequired

func (pr *Prover) CheckRefreshRequired(counterparty core.ChainInfoICS02Querier) (bool, error)

func (*Prover) CreateInitialLightClientState

func (pr *Prover) CreateInitialLightClientState(height exported.Height) (exported.ClientState, exported.ConsensusState, error)

CreateInitialLightClientState returns a pair of ClientState and ConsensusState based on the state of the self chain at `height`. These states will be submitted to the counterparty chain as MsgCreateClient. If `height` is nil, the latest finalized height is selected automatically.

func (*Prover) GetLatestFinalizedHeader

func (pr *Prover) GetLatestFinalizedHeader() (out core.Header, err error)

GetLatestFinalizedHeader returns the latest finalized header from the chain

func (*Prover) GetLatestFinalizedHeaderByLatestHeight

func (pr *Prover) GetLatestFinalizedHeaderByLatestHeight(latestBlockNumber uint64) (core.Header, error)

GetLatestFinalizedHeaderByLatestHeight returns the latest finalized verifiable header from the chain

func (*Prover) GetStorageRoot

func (pr *Prover) GetStorageRoot(header *types.Header) (common.Hash, error)

func (*Prover) Init

func (pr *Prover) Init(homePath string, timeout time.Duration, codec codec.ProtoCodecMarshaler, debug bool) error

Init initializes the chain

func (*Prover) ProveHostConsensusState

func (pr *Prover) ProveHostConsensusState(ctx core.QueryContext, height exported.Height, consensusState exported.ConsensusState) (proof []byte, err error)

ProveHostConsensusState returns an existence proof of the consensus state at `height` This proof would be ignored in ibc-go, but it is required to `getSelfConsensusState` of ibc-solidity.

func (*Prover) ProveState

func (pr *Prover) ProveState(ctx core.QueryContext, path string, value []byte) ([]byte, clienttypes.Height, error)

func (*Prover) SetRelayInfo

func (pr *Prover) SetRelayInfo(path *core.PathEnd, counterparty *core.ProvableChain, counterpartyPath *core.PathEnd) error

SetRelayInfo sets source's path and counterparty's info to the chain

func (*Prover) SetupForRelay

func (pr *Prover) SetupForRelay(ctx context.Context) error

SetupForRelay performs chain-specific setup before starting the relay

func (*Prover) SetupHeadersForUpdate

func (pr *Prover) SetupHeadersForUpdate(counterparty core.FinalityAwareChain, latestFinalizedHeader core.Header) ([]core.Header, error)

SetupHeadersForUpdate creates a new header based on a given header

func (*Prover) SetupHeadersForUpdateByLatestHeight

func (pr *Prover) SetupHeadersForUpdateByLatestHeight(clientStateLatestHeight exported.Height, latestFinalizedHeader *Header) ([]core.Header, error)

type ProverConfig

type ProverConfig struct {
	TrustingPeriod       time.Duration `protobuf:"bytes,1,opt,name=trusting_period,json=trustingPeriod,proto3,stdduration" json:"trusting_period"`
	MaxClockDrift        time.Duration `protobuf:"bytes,2,opt,name=max_clock_drift,json=maxClockDrift,proto3,stdduration" json:"max_clock_drift"`
	RefreshThresholdRate *Fraction     `protobuf:"bytes,3,opt,name=refresh_threshold_rate,json=refreshThresholdRate,proto3" json:"refresh_threshold_rate,omitempty"`
}

func (*ProverConfig) Build

func (c *ProverConfig) Build(chain core.Chain) (core.Prover, error)

func (*ProverConfig) Descriptor

func (*ProverConfig) Descriptor() ([]byte, []int)

func (*ProverConfig) GetMaxClockDrift

func (m *ProverConfig) GetMaxClockDrift() time.Duration

func (*ProverConfig) GetRefreshThresholdRate

func (m *ProverConfig) GetRefreshThresholdRate() *Fraction

func (*ProverConfig) GetTrustingPeriod

func (m *ProverConfig) GetTrustingPeriod() time.Duration

func (*ProverConfig) Marshal

func (m *ProverConfig) Marshal() (dAtA []byte, err error)

func (*ProverConfig) MarshalTo

func (m *ProverConfig) MarshalTo(dAtA []byte) (int, error)

func (*ProverConfig) MarshalToSizedBuffer

func (m *ProverConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ProverConfig) ProtoMessage

func (*ProverConfig) ProtoMessage()

func (*ProverConfig) Reset

func (m *ProverConfig) Reset()

func (*ProverConfig) Size

func (m *ProverConfig) Size() (n int)

func (*ProverConfig) String

func (m *ProverConfig) String() string

func (*ProverConfig) Unmarshal

func (m *ProverConfig) Unmarshal(dAtA []byte) error

func (*ProverConfig) Validate

func (c *ProverConfig) Validate() error

func (*ProverConfig) XXX_DiscardUnknown

func (m *ProverConfig) XXX_DiscardUnknown()

func (*ProverConfig) XXX_Marshal

func (m *ProverConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ProverConfig) XXX_Merge

func (m *ProverConfig) XXX_Merge(src proto.Message)

func (*ProverConfig) XXX_Size

func (m *ProverConfig) XXX_Size() int

func (*ProverConfig) XXX_Unmarshal

func (m *ProverConfig) XXX_Unmarshal(b []byte) error

type Validators

type Validators [][]byte

func ExtractValidatorSetAndTurnLength

func ExtractValidatorSetAndTurnLength(h *types.Header) (Validators, uint8, error)

func QueryValidatorSetAndTurnLength

func QueryValidatorSetAndTurnLength(fn getHeaderFn, height uint64) (Validators, uint8, error)

func (Validators) Checkpoint

func (v Validators) Checkpoint(turnLength uint8) uint64

func (Validators) Contains

func (v Validators) Contains(other Validators) bool

type ValidatorsBitSet

type ValidatorsBitSet uint64

type VoteAttestation

type VoteAttestation struct {
	VoteAddressSet uint64
	AggSignature   BLSSignature
	Data           *VoteData
	Extra          []byte
}

type VoteData

type VoteData struct {
	SourceNumber uint64
	SourceHash   common.Hash
	TargetNumber uint64
	TargetHash   common.Hash
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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