Versions in this module Expand all Collapse all v0 v0.0.2 May 13, 2020 v0.0.1 May 13, 2020 Changes in this version + const BlockVersion + const EventBond + const EventCompleteProposal + const EventDupeout + const EventFork + const EventLock + const EventNewBlock + const EventNewBlockHeader + const EventNewRound + const EventNewRoundStep + const EventPolka + const EventProposalHeartbeat + const EventRebond + const EventRelock + const EventTimeoutPropose + const EventTimeoutWait + const EventTx + const EventTypeKey + const EventUnbond + const EventUnlock + const EventVote + const MaxBlockSizeBytes + const TimeFormat + const TxHashKey + const TxHeightKey + const VoteTypePrecommit + const VoteTypePrevote + var ErrInvalidBlockPartHash = errors.New("Error invalid block part hash") + var ErrInvalidBlockPartSignature = errors.New("Error invalid block part signature") + var ErrPartSetInvalidProof = errors.New("Error part set invalid proof") + var ErrPartSetUnexpectedIndex = errors.New("Error part set unexpected index") + var ErrVoteInvalidBlockHash = errors.New("Invalid block hash") + var ErrVoteInvalidSignature = errors.New("Invalid signature") + var ErrVoteInvalidValidatorAddress = errors.New("Invalid validator address") + var ErrVoteInvalidValidatorIndex = errors.New("Invalid validator index") + var ErrVoteNil = errors.New("Nil vote") + var ErrVoteNonDeterministicSignature = errors.New("Non-deterministic signature") + var ErrVoteUnexpectedStep = errors.New("Unexpected step") + var EventQueryBond = QueryForEvent(EventBond) + var EventQueryCompleteProposal = QueryForEvent(EventCompleteProposal) + var EventQueryDupeout = QueryForEvent(EventDupeout) + var EventQueryFork = QueryForEvent(EventFork) + var EventQueryLock = QueryForEvent(EventLock) + var EventQueryNewBlock = QueryForEvent(EventNewBlock) + var EventQueryNewBlockHeader = QueryForEvent(EventNewBlockHeader) + var EventQueryNewRound = QueryForEvent(EventNewRound) + var EventQueryNewRoundStep = QueryForEvent(EventNewRoundStep) + var EventQueryPolka = QueryForEvent(EventPolka) + var EventQueryProposalHeartbeat = QueryForEvent(EventProposalHeartbeat) + var EventQueryRebond = QueryForEvent(EventRebond) + var EventQueryRelock = QueryForEvent(EventRelock) + var EventQueryTimeoutPropose = QueryForEvent(EventTimeoutPropose) + var EventQueryTimeoutWait = QueryForEvent(EventTimeoutWait) + var EventQueryTx = QueryForEvent(EventTx) + var EventQueryUnbond = QueryForEvent(EventUnbond) + var EventQueryUnlock = QueryForEvent(EventUnlock) + var EventQueryVote = QueryForEvent(EventVote) + var PeerMempoolChKey = "MempoolReactor.peerMempoolCh" + var PeerStateKey = "ConsensusReactor.peerState" + var TM2PB = tm2pb + func CanonicalTime(t time.Time) string + func CopyFile(src, dst string) (err error) + func EventQueryTxFor(tx Tx) tmpubsub.Query + func FillUpWithContractCode(conf *cfg.Config, appStateJSON json.RawMessage) (json.RawMessage, error) + func IsVoteTypeValid(type_ byte) bool + func QueryForEvent(eventType string) tmpubsub.Query + func RandValidator(randPower bool, minPower int64) (*Validator, PrivValidator) + func RandValidatorSet(numValidators int, votingPower int64) (*ValidatorSet, []PrivValidator) + func RegisterEventDatas(cdc *amino.Codec) + func RegisterEvidences(cdc *amino.Codec) + func ValidatorsFromFile(genDoc GenesisDoc, validatorsFile string) *[]GenesisValidator + type ABCIResult struct + Code uint32 + Data cmn.HexBytes + func NewResultFromResponse(response *abci.ResponseDeliverTx) ABCIResult + func (a ABCIResult) Hash() []byte + type ABCIResults []ABCIResult + func NewResults(del []*abci.ResponseDeliverTx) ABCIResults + func (a ABCIResults) Bytes() []byte + func (a ABCIResults) Hash() []byte + func (a ABCIResults) ProveResult(i int) merkle.SimpleProof + type AccountInfo struct + Address string + Balance bn.Number + type Allocation []types.Allocation + func (as *Allocation) StringIndented(indent string) string + type Block struct + Evidence EvidenceData + LastCommit *Commit + func GIMakeBlock(height int64, txs []Tx, commit *Commit, txHashList [][]byte, proposer string, ...) *Block + func MakeBlock(height int64, txs []Tx, commit *Commit) *Block + func (b *Block) AddEvidence(evidence []Evidence) + func (b *Block) Hash() cmn.HexBytes + func (b *Block) HashesTo(hash []byte) bool + func (b *Block) MakePartSet(partSize int) *PartSet + func (b *Block) String() string + func (b *Block) StringIndented(indent string) string + func (b *Block) StringShort() string + func (b *Block) ValidateBasic() error + type BlockEventPublisher interface + PublishEventNewBlock func(block EventDataNewBlock) error + PublishEventNewBlockHeader func(header EventDataNewBlockHeader) error + PublishEventTx func(EventDataTx) error + type BlockGossip struct + BlockPartSizeBytes int + func DefaultBlockGossip() BlockGossip + type BlockID struct + Hash cmn.HexBytes + PartsHeader PartSetHeader + func (blockID BlockID) Equals(other BlockID) bool + func (blockID BlockID) IsZero() bool + func (blockID BlockID) Key() string + func (blockID BlockID) String() string + type BlockMeta struct + BlockID BlockID + Header *Header + func NewBlockMeta(block *Block, blockParts *PartSet) *BlockMeta + type BlockSize struct + MaxBytes int + MaxGas int64 + MaxTxs int + func DefaultBlockSize() BlockSize + type BlockStore interface + SaveBlock func(block *Block, blockParts *PartSet, seenCommit *Commit) + type BlockStoreRPC interface + Height func() int64 + LoadBlock func(height int64) *Block + LoadBlockCommit func(height int64) *Commit + LoadBlockMeta func(height int64) *BlockMeta + LoadBlockPart func(height int64, index int) *Part + LoadSeenCommit func(height int64) *Commit + type CanonicalJSONBlockID struct + Hash cmn.HexBytes + PartsHeader CanonicalJSONPartSetHeader + func CanonicalBlockID(blockID BlockID) CanonicalJSONBlockID + type CanonicalJSONHeartbeat struct + ChainID string + Height int64 + Round int + Sequence int + Type string + ValidatorAddress crypto.Address + ValidatorIndex int + func CanonicalHeartbeat(chainID string, heartbeat *Heartbeat) CanonicalJSONHeartbeat + type CanonicalJSONPartSetHeader struct + Hash cmn.HexBytes + Total int + func CanonicalPartSetHeader(psh PartSetHeader) CanonicalJSONPartSetHeader + type CanonicalJSONProposal struct + BlockPartsHeader CanonicalJSONPartSetHeader + ChainID string + Height int64 + POLBlockID CanonicalJSONBlockID + POLRound int + Round int + Timestamp string + Type string + func CanonicalProposal(chainID string, proposal *Proposal) CanonicalJSONProposal + type CanonicalJSONVote struct + BlockID CanonicalJSONBlockID + ChainID string + Height int64 + Round int + Timestamp string + Type string + VoteType byte + func CanonicalVote(chainID string, vote *Vote) CanonicalJSONVote + type Commit struct + BlockID BlockID + Precommits []*Vote + func MakeCommit(blockID BlockID, height int64, round int, voteSet *VoteSet, ...) (*Commit, error) + func (commit *Commit) BitArray() *cmn.BitArray + func (commit *Commit) FirstPrecommit() *Vote + func (commit *Commit) GetByIndex(index int) *Vote + func (commit *Commit) Hash() cmn.HexBytes + func (commit *Commit) Height() int64 + func (commit *Commit) IsCommit() bool + func (commit *Commit) Round() int + func (commit *Commit) Size() int + func (commit *Commit) StringIndented(indent string) string + func (commit *Commit) Type() byte + func (commit *Commit) ValidateBasic() error + type ConsensusParams struct + func DefaultConsensusParams() *ConsensusParams + func (params *ConsensusParams) Hash() []byte + func (params *ConsensusParams) Validate() error + func (params ConsensusParams) Update(params2 *abci.ConsensusParams) ConsensusParams + type Data struct + LastTxsHashList HashList + Txs Txs + func (data *Data) Hash() cmn.HexBytes + func (data *Data) StringIndented(indent string) string + type DuplicateVoteEvidence struct + PubKey crypto.PubKey + VoteA *Vote + VoteB *Vote + func (dve *DuplicateVoteEvidence) Address() string + func (dve *DuplicateVoteEvidence) Equal(ev Evidence) bool + func (dve *DuplicateVoteEvidence) Hash() []byte + func (dve *DuplicateVoteEvidence) Height() int64 + func (dve *DuplicateVoteEvidence) Index() int + func (dve *DuplicateVoteEvidence) String() string + func (dve *DuplicateVoteEvidence) Verify(chainID string) error + type ErrEvidenceInvalid struct + ErrorValue error + Evidence Evidence + func NewEvidenceInvalidErr(ev Evidence, err error) *ErrEvidenceInvalid + func (err *ErrEvidenceInvalid) Error() string + type ErrVoteConflictingVotes struct + func NewConflictingVoteError(val *Validator, voteA, voteB *Vote) *ErrVoteConflictingVotes + func (err *ErrVoteConflictingVotes) Error() string + type EventBus struct + func NewEventBus() *EventBus + func NewEventBusWithBufferCapacity(cap int) *EventBus + func (b *EventBus) OnStart() error + func (b *EventBus) OnStop() + func (b *EventBus) Publish(eventType string, eventData TMEventData) error + func (b *EventBus) PublishEventCompleteProposal(event EventDataRoundState) error + func (b *EventBus) PublishEventLock(event EventDataRoundState) error + func (b *EventBus) PublishEventNewBlock(event EventDataNewBlock) error + func (b *EventBus) PublishEventNewBlockHeader(event EventDataNewBlockHeader) error + func (b *EventBus) PublishEventNewRound(event EventDataRoundState) error + func (b *EventBus) PublishEventNewRoundStep(event EventDataRoundState) error + func (b *EventBus) PublishEventPolka(event EventDataRoundState) error + func (b *EventBus) PublishEventProposalHeartbeat(event EventDataProposalHeartbeat) error + func (b *EventBus) PublishEventRelock(event EventDataRoundState) error + func (b *EventBus) PublishEventTimeoutPropose(event EventDataRoundState) error + func (b *EventBus) PublishEventTimeoutWait(event EventDataRoundState) error + func (b *EventBus) PublishEventTx(event EventDataTx) error + func (b *EventBus) PublishEventUnlock(event EventDataRoundState) error + func (b *EventBus) PublishEventVote(event EventDataVote) error + func (b *EventBus) SetLogger(l log.Logger) + func (b *EventBus) Subscribe(ctx context.Context, subscriber string, query tmpubsub.Query, ...) error + func (b *EventBus) Unsubscribe(ctx context.Context, subscriber string, query tmpubsub.Query) error + func (b *EventBus) UnsubscribeAll(ctx context.Context, subscriber string) error + type EventBusSubscriber interface + Subscribe func(ctx context.Context, subscriber string, query tmpubsub.Query, ...) error + Unsubscribe func(ctx context.Context, subscriber string, query tmpubsub.Query) error + UnsubscribeAll func(ctx context.Context, subscriber string) error + type EventDataNewBlock struct + Block *Block + func (_ EventDataNewBlock) AssertIsTMEventData() + type EventDataNewBlockHeader struct + Header *Header + func (_ EventDataNewBlockHeader) AssertIsTMEventData() + type EventDataProposalHeartbeat struct + Heartbeat *Heartbeat + func (_ EventDataProposalHeartbeat) AssertIsTMEventData() + type EventDataRoundState struct + Height int64 + Round int + RoundState interface{} + Step string + func (_ EventDataRoundState) AssertIsTMEventData() + type EventDataString string + func (_ EventDataString) AssertIsTMEventData() + type EventDataTx struct + func (_ EventDataTx) AssertIsTMEventData() + type EventDataVote struct + Vote *Vote + func (_ EventDataVote) AssertIsTMEventData() + type Evidence interface + Address func() string + Equal func(Evidence) bool + Hash func() []byte + Height func() int64 + Index func() int + String func() string + Verify func(chainID string) error + type EvidenceData struct + Evidence EvidenceList + func (data *EvidenceData) Hash() cmn.HexBytes + func (data *EvidenceData) StringIndented(indent string) string + type EvidenceList []Evidence + func (evl EvidenceList) Has(evidence Evidence) bool + func (evl EvidenceList) Hash() []byte + func (evl EvidenceList) String() string + type EvidenceParams struct + MaxAge int64 + func DefaultEvidenceParams() EvidenceParams + type EvidencePool interface + AddEvidence func(Evidence) error + PendingEvidence func() []Evidence + Update func(*Block) + type GenesisDoc struct + AppHash cmn.HexBytes + AppStateJSON json.RawMessage + ChainID string + ChainVersion string + ConsensusParams *ConsensusParams + GenesisTime time.Time + Validators []GenesisValidator + func GenesisDocFromFile(config *cfg.Config) (*GenesisDoc, error) + func GenesisDocFromJSON(jsonBlob []byte) (*GenesisDoc, error) + func (genDoc *GenesisDoc) AppState() json.RawMessage + func (genDoc *GenesisDoc) SaveAs(file string) error + func (genDoc *GenesisDoc) ValidateAndComplete() error + func (genDoc *GenesisDoc) ValidatorHash() []byte + type GenesisValidator struct + Name string + Power int64 + PubKey crypto.PubKey + RewardAddr string + type HashList [][]byte + type Header struct + BlockVersion *string + ChainID string + ChainVersion *int64 + ConsensusHash cmn.HexBytes + DataHash cmn.HexBytes + EvidenceHash cmn.HexBytes + Height int64 + LastAllocation Allocation + LastAppHash cmn.HexBytes + LastBlockID BlockID + LastCommitHash cmn.HexBytes + LastFee uint64 + LastMining *int64 + LastQueueChains *ibc.QueueChain + LastResultsHash cmn.HexBytes + NumTxs int64 + ProposerAddress string + RandomOfBlock cmn.HexBytes + Relayer *Relayer + RewardAddress string + Time time.Time + TotalTxs int64 + ValidatorsHash cmn.HexBytes + Version *string + func (h *Header) Hash() cmn.HexBytes + func (h *Header) StringIndented(indent string) string + type Heartbeat struct + Height int64 + Round int + Sequence int + Signature crypto.Signature + ValidatorAddress crypto.Address + ValidatorIndex int + func (heartbeat *Heartbeat) Copy() *Heartbeat + func (heartbeat *Heartbeat) SignBytes(chainID string) []byte + func (heartbeat *Heartbeat) String() string + type Mempool interface + CheckTx func(Tx, func(*abci.Response)) error + EnableTxsAvailable func() + Flush func() + FlushAppConn func() error + GiTxCache func(cmn.HexBytes, interface{}) + GiTxSearch func(string) (*abci.ResponseCheckTx, error) + Lock func() + Reap func(int) Txs + Size func() int + TxsAvailable func() <-chan int64 + Unlock func() + Update func(height int64, txs Txs) error + type MockBadEvidence struct + func (e MockBadEvidence) Equal(ev Evidence) bool + func (e MockBadEvidence) String() string + func (e MockBadEvidence) Verify(chainID string) error + type MockEvidencePool struct + func (m MockEvidencePool) AddEvidence(Evidence) error + func (m MockEvidencePool) PendingEvidence() []Evidence + func (m MockEvidencePool) Update(*Block) + type MockGoodEvidence struct + Address_ string + Height_ int64 + Index_ int + func NewMockGoodEvidence(height int64, index int, address string) MockGoodEvidence + func (e MockGoodEvidence) Address() string + func (e MockGoodEvidence) Equal(ev Evidence) bool + func (e MockGoodEvidence) Hash() []byte + func (e MockGoodEvidence) Height() int64 + func (e MockGoodEvidence) Index() int + func (e MockGoodEvidence) String() string + func (e MockGoodEvidence) Verify(chainID string) error + type MockMempool struct + func (m MockMempool) CheckTx(tx Tx, cb func(*abci.Response)) error + func (m MockMempool) EnableTxsAvailable() + func (m MockMempool) Flush() + func (m MockMempool) FlushAppConn() error + func (m MockMempool) GiTxCache(tx cmn.HexBytes, a interface{}) + func (m MockMempool) GiTxSearch(tx string) (*abci.ResponseCheckTx, error) + func (m MockMempool) Lock() + func (m MockMempool) Reap(n int) Txs + func (m MockMempool) Size() int + func (m MockMempool) TxsAvailable() <-chan int64 + func (m MockMempool) Unlock() + func (m MockMempool) Update(height int64, txs Txs) error + type MockPV struct + func NewMockPV() *MockPV + func (pv *MockPV) DisableChecks() + func (pv *MockPV) GetAddress() crypto.Address + func (pv *MockPV) GetPubKey() crypto.PubKey + func (pv *MockPV) SignHeartbeat(chainID string, heartbeat *Heartbeat) error + func (pv *MockPV) SignProposal(chainID string, proposal *Proposal) error + func (pv *MockPV) SignVote(chainID string, vote *Vote) error + func (pv *MockPV) String() string + type NopEventBus struct + func (NopEventBus) PublishEventCompleteProposal(rs EventDataRoundState) error + func (NopEventBus) PublishEventLock(rs EventDataRoundState) error + func (NopEventBus) PublishEventNewBlock(block EventDataNewBlock) error + func (NopEventBus) PublishEventNewBlockHeader(header EventDataNewBlockHeader) error + func (NopEventBus) PublishEventNewRound(rs EventDataRoundState) error + func (NopEventBus) PublishEventNewRoundStep(rs EventDataRoundState) error + func (NopEventBus) PublishEventPolka(rs EventDataRoundState) error + func (NopEventBus) PublishEventRelock(rs EventDataRoundState) error + func (NopEventBus) PublishEventTimeoutPropose(rs EventDataRoundState) error + func (NopEventBus) PublishEventTimeoutWait(rs EventDataRoundState) error + func (NopEventBus) PublishEventTx(tx EventDataTx) error + func (NopEventBus) PublishEventUnlock(rs EventDataRoundState) error + func (NopEventBus) PublishEventVote(vote EventDataVote) error + func (NopEventBus) Subscribe(ctx context.Context, subscriber string, query tmpubsub.Query, ...) error + func (NopEventBus) Unsubscribe(ctx context.Context, subscriber string, query tmpubsub.Query) error + func (NopEventBus) UnsubscribeAll(ctx context.Context, subscriber string) error + type P2PID string + type Part struct + Bytes cmn.HexBytes + Index int + Proof merkle.SimpleProof + func (part *Part) Hash() []byte + func (part *Part) String() string + func (part *Part) StringIndented(indent string) string + type PartSet struct + func NewPartSetFromData(data []byte, partSize int) *PartSet + func NewPartSetFromHeader(header PartSetHeader) *PartSet + func (ps *PartSet) AddPart(part *Part, verify bool) (bool, error) + func (ps *PartSet) BitArray() *cmn.BitArray + func (ps *PartSet) Count() int + func (ps *PartSet) GetPart(index int) *Part + func (ps *PartSet) GetReader() io.Reader + func (ps *PartSet) HasHeader(header PartSetHeader) bool + func (ps *PartSet) Hash() []byte + func (ps *PartSet) HashesTo(hash []byte) bool + func (ps *PartSet) Header() PartSetHeader + func (ps *PartSet) IsComplete() bool + func (ps *PartSet) MarshalJSON() ([]byte, error) + func (ps *PartSet) StringShort() string + func (ps *PartSet) Total() int + type PartSetHeader struct + Hash cmn.HexBytes + Total int + func (psh PartSetHeader) Equals(other PartSetHeader) bool + func (psh PartSetHeader) IsZero() bool + func (psh PartSetHeader) String() string + type PartSetReader struct + func NewPartSetReader(parts []*Part) *PartSetReader + func (psr *PartSetReader) Read(p []byte) (n int, err error) + type PrivValidator interface + GetAddress func() crypto.Address + GetPubKey func() crypto.PubKey + SignHeartbeat func(chainID string, heartbeat *Heartbeat) error + SignProposal func(chainID string, proposal *Proposal) error + SignVote func(chainID string, vote *Vote) error + type PrivValidatorsByAddress []PrivValidator + func (pvs PrivValidatorsByAddress) Len() int + func (pvs PrivValidatorsByAddress) Less(i, j int) bool + func (pvs PrivValidatorsByAddress) Swap(i, j int) + type Proposal struct + BlockPartsHeader PartSetHeader + Height int64 + POLBlockID BlockID + POLRound int + Round int + Signature crypto.Signature + Timestamp time.Time + func NewProposal(height int64, round int, blockPartsHeader PartSetHeader, polRound int, ...) *Proposal + func (p *Proposal) SignBytes(chainID string) []byte + func (p *Proposal) String() string + type Relayer struct + Address crypto.Address + StartTime time.Time + type SideChainOrg struct + OrgName string + Owner string + type Signable interface + SignBytes func(chainID string) []byte + type SignedHeader struct + Commit *Commit + Header *Header + type TMEventData interface + AssertIsTMEventData func() + type TooManyProposalEvidence struct + H int64 + PubKey crypto.PubKey + func (tmpe *TooManyProposalEvidence) Address() string + func (tmpe *TooManyProposalEvidence) Equal(ev Evidence) bool + func (tmpe *TooManyProposalEvidence) Hash() []byte + func (tmpe *TooManyProposalEvidence) Height() int64 + func (tmpe *TooManyProposalEvidence) Index() int + func (tmpe *TooManyProposalEvidence) String() string + func (tmpe *TooManyProposalEvidence) Verify(chainID string) error + type Tx []byte + func (tx Tx) Hash() []byte + func (tx Tx) String() string + type TxEventBuffer struct + func NewTxEventBuffer(next TxEventPublisher, capacity int) *TxEventBuffer + func (b *TxEventBuffer) Flush() error + func (b *TxEventBuffer) PublishEventTx(e EventDataTx) error + func (b TxEventBuffer) Len() int + type TxEventPublisher interface + PublishEventTx func(EventDataTx) error + type TxProof struct + Data Tx + Index int + Proof merkle.SimpleProof + RootHash cmn.HexBytes + Total int + func (tp TxProof) LeafHash() []byte + func (tp TxProof) Validate(dataHash []byte) error + type TxResult struct + Height int64 + Index uint32 + Result abci.ResponseDeliverTx + Tx Tx + type TxSize struct + MaxBytes int + MaxGas int64 + func DefaultTxSize() TxSize + type Txs []Tx + func (txs Txs) Hash() []byte + func (txs Txs) Index(tx Tx) int + func (txs Txs) IndexByHash(hash []byte) int + func (txs Txs) Proof(i int) TxProof + type Validator struct + Accum int64 + Address crypto.Address + Name string + PubKey crypto.PubKey + RewardAddr crypto.Address + VotingPower uint64 + func NewValidator(pubKey crypto.PubKey, votingPower uint64, reward crypto.Address, name string) *Validator + func (v *Validator) CompareAccum(other *Validator) *Validator + func (v *Validator) Copy() *Validator + func (v *Validator) Hash() []byte + func (v *Validator) String() string + type ValidatorSet struct + Proposer *Validator + Validators []*Validator + func NewValidatorSet(vals []*Validator) *ValidatorSet + func (valSet *ValidatorSet) Add(val *Validator) (added bool) + func (valSet *ValidatorSet) Copy() *ValidatorSet + func (valSet *ValidatorSet) GetByAddress(address string) (index int, val *Validator) + func (valSet *ValidatorSet) GetByIndex(index int) (address string, val *Validator) + func (valSet *ValidatorSet) GetProposer(invalidProposer *[]crypto.Address, cb func(v *Validator)) (proposer *Validator) + func (valSet *ValidatorSet) HasAddress(address string) bool + func (valSet *ValidatorSet) Hash() []byte + func (valSet *ValidatorSet) IncrementAccum(times int) + func (valSet *ValidatorSet) Iterate(fn func(index int, val *Validator) bool) + func (valSet *ValidatorSet) Remove(address string) (val *Validator, removed bool) + func (valSet *ValidatorSet) Size() int + func (valSet *ValidatorSet) String() string + func (valSet *ValidatorSet) StringIndented(indent string) string + func (valSet *ValidatorSet) TotalVotingPower() int64 + func (valSet *ValidatorSet) Update(val *Validator) (updated bool) + func (valSet *ValidatorSet) VerifyCommit(chainID string, blockID BlockID, height int64, commit *Commit) error + func (valSet *ValidatorSet) VerifyCommitAny(newSet *ValidatorSet, chainID string, blockID BlockID, height int64, ...) error + type ValidatorsByAddress []*Validator + func (vs ValidatorsByAddress) Len() int + func (vs ValidatorsByAddress) Less(i, j int) bool + func (vs ValidatorsByAddress) Swap(i, j int) + type Vote struct + BlockID BlockID + Height int64 + Round int + Signature crypto.Signature + Timestamp time.Time + Type byte + ValidatorAddress crypto.Address + ValidatorIndex int + func (vote *Vote) Copy() *Vote + func (vote *Vote) SignBytes(chainID string) []byte + func (vote *Vote) String() string + func (vote *Vote) Verify(chainID string, pubKey crypto.PubKey) error + type VoteSet struct + func NewVoteSet(chainID string, height int64, round int, type_ byte, valSet *ValidatorSet) *VoteSet + func (voteSet *VoteSet) AddVote(vote *Vote) (added bool, err error) + func (voteSet *VoteSet) BitArray() *cmn.BitArray + func (voteSet *VoteSet) BitArrayByBlockID(blockID BlockID) *cmn.BitArray + func (voteSet *VoteSet) ChainID() string + func (voteSet *VoteSet) GetByAddress(address string) *Vote + func (voteSet *VoteSet) GetByIndex(valIndex int) *Vote + func (voteSet *VoteSet) HasAll() bool + func (voteSet *VoteSet) HasTwoThirdsAny() bool + func (voteSet *VoteSet) HasTwoThirdsMajority() bool + func (voteSet *VoteSet) Height() int64 + func (voteSet *VoteSet) IsCommit() bool + func (voteSet *VoteSet) MakeCommit() *Commit + func (voteSet *VoteSet) MarshalJSON() ([]byte, error) + func (voteSet *VoteSet) Round() int + func (voteSet *VoteSet) SetPeerMaj23(peerID P2PID, blockID BlockID) error + func (voteSet *VoteSet) Size() int + func (voteSet *VoteSet) String() string + func (voteSet *VoteSet) StringIndented(indent string) string + func (voteSet *VoteSet) StringShort() string + func (voteSet *VoteSet) TwoThirdsMajority() (blockID BlockID, ok bool) + func (voteSet *VoteSet) Type() byte + type VoteSetReader interface + BitArray func() *cmn.BitArray + GetByIndex func(int) *Vote + Height func() int64 + IsCommit func() bool + Round func() int + Size func() int + Type func() byte