genesis

package
v0.0.0-...-c69f244 Latest Latest
Warning

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

Go to latest
Published: Jul 16, 2022 License: LGPL-3.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildFromMap

func BuildFromMap(m map[string][]byte, gen *Genesis) error

BuildFromMap builds genesis fields data from map

func NewGenesisBlockFromTrie

func NewGenesisBlockFromTrie(t *trie.Trie) (*types.Header, error)

NewGenesisBlockFromTrie creates a genesis block from the provided trie

func NewTrieFromGenesis

func NewTrieFromGenesis(g *Genesis) (*trie.Trie, error)

NewTrieFromGenesis creates a new trie from the raw genesis data

Types

type Data

type Data struct {
	Name               string
	ID                 string
	ChainType          string
	Bootnodes          [][]byte
	TelemetryEndpoints []*TelemetryEndpoint
	ProtocolID         string
	Properties         map[string]interface{}
	ForkBlocks         []string
	BadBlocks          []string
	ConsensusEngine    string
	CodeSubstitutes    map[string]string
}

Data defines the genesis file data formatted for trie storage

type Fields

type Fields struct {
	Raw     map[string]map[string]string      `json:"raw,omitempty"`
	Runtime map[string]map[string]interface{} `json:"runtime,omitempty"`
}

Fields stores genesis raw data, and human readable runtime data

type Genesis

type Genesis struct {
	Name               string                 `json:"name"`
	ID                 string                 `json:"id"`
	ChainType          string                 `json:"chainType"`
	Bootnodes          []string               `json:"bootNodes"`
	TelemetryEndpoints []interface{}          `json:"telemetryEndpoints"`
	ProtocolID         string                 `json:"protocolId"`
	Genesis            Fields                 `json:"genesis"`
	Properties         map[string]interface{} `json:"properties"`
	ForkBlocks         []string               `json:"forkBlocks"`
	BadBlocks          []string               `json:"badBlocks"`
	ConsensusEngine    string                 `json:"consensusEngine"`
	CodeSubstitutes    map[string]string      `json:"codeSubstitutes"`
}

Genesis stores the data parsed from the genesis configuration file

func NewGenesisFromJSON

func NewGenesisFromJSON(file string, authCount int) (*Genesis, error)

NewGenesisFromJSON parses Human Readable JSON formatted genesis file.Name. If authCount > 0, then it keeps only `authCount` number of authorities for babe and grandpa.

func NewGenesisFromJSONRaw

func NewGenesisFromJSONRaw(file string) (*Genesis, error)

NewGenesisFromJSONRaw parses a JSON formatted genesis file

func NewGenesisSpecFromJSON

func NewGenesisSpecFromJSON(file string) (*Genesis, error)

NewGenesisSpecFromJSON returns a new Genesis (without raw fields) from a human-readable genesis file

func (*Genesis) GenesisData

func (g *Genesis) GenesisData() *Data

GenesisData formats genesis for trie storage

func (*Genesis) GenesisFields

func (g *Genesis) GenesisFields() Fields

GenesisFields returns the genesis fields including genesis raw data

func (*Genesis) IsRaw

func (g *Genesis) IsRaw() bool

IsRaw returns whether the genesis is raw or not

func (*Genesis) ToRaw

func (g *Genesis) ToRaw() error

ToRaw converts a non-raw genesis to a raw genesis

type TelemetryEndpoint

type TelemetryEndpoint struct {
	Endpoint  string
	Verbosity int
}

TelemetryEndpoint struct to hold telemetry endpoint information

Jump to

Keyboard shortcuts

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