notarization

package
v1.0.0-beta.5 Latest Latest
Warning

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

Go to latest
Published: May 20, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var NewEvents = event.CreateGroupConstructor(func() (self *Events) {
	return &Events{
		SlotCommitted:           event.New1[*SlotCommittedDetails](),
		LatestCommitmentUpdated: event.New1[*model.Commitment](),
	}
})

NewEvents contains the constructor of the Events object (it is generated by a generic factory).

Functions

This section is empty.

Types

type Events

type Events struct {
	SlotCommitted           *event.Event1[*SlotCommittedDetails]
	LatestCommitmentUpdated *event.Event1[*model.Commitment]

	event.Group[Events, *Events]
}

Events is a container that acts as a dictionary for the events of the notarization manager.

type Notarization

type Notarization interface {
	// IsBootstrapped returns if notarization finished committing all pending slots up to the current acceptance time.
	IsBootstrapped() bool

	ForceCommit(slot iotago.SlotIndex) (*model.Commitment, error)
	ForceCommitUntil(commitUntilSlot iotago.SlotIndex) error

	AcceptedBlocksCount(index iotago.SlotIndex) int

	// Reset resets the component to a clean state as if it was created at the last commitment.
	Reset()

	module.Module
}

type SlotCommittedDetails

type SlotCommittedDetails struct {
	Commitment            *model.Commitment
	AcceptedBlocks        ads.Set[iotago.Identifier, iotago.BlockID]
	ActiveValidatorsCount int
	OutputsCreated        utxoledger.Outputs
	OutputsConsumed       utxoledger.Spents
	Mutations             []*iotago.Transaction
}

SlotCommittedDetails contains the details of a committed slot.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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