Documentation
¶
Index ¶
- type Account
- type Approver
- type Authority
- type Builder
- func (b *Builder) Build(stater *state.Stater) (blk *block.Block, events tx.Events, transfers tx.Transfers, err error)
- func (b *Builder) Call(clause *tx.Clause, caller thor.Address) *Builder
- func (b *Builder) ComputeID() (thor.Bytes32, error)
- func (b *Builder) ExtraData(data [28]byte) *Builder
- func (b *Builder) ForkConfig(fc thor.ForkConfig) *Builder
- func (b *Builder) GasLimit(limit uint64) *Builder
- func (b *Builder) State(proc func(state *state.State) error) *Builder
- func (b *Builder) Timestamp(t uint64) *Builder
- type CustomGenesis
- type DevAccount
- type Executor
- type Genesis
- type Params
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Account ¶
type Account struct {
Address thor.Address `json:"address"`
Balance *hexOrDecimal256 `json:"balance"`
Energy *hexOrDecimal256 `json:"energy"`
Code string `json:"code"`
Storage map[string]thor.Bytes32 `json:"storage"`
}
Account is the account will set to the genesis block
type Approver ¶
type Approver struct {
Address thor.Address `json:"address"`
Identity thor.Bytes32 `json:"identity"`
}
Approver is the approver info for executor contract
type Authority ¶
type Authority struct {
MasterAddress thor.Address `json:"masterAddress"`
EndorsorAddress thor.Address `json:"endorsorAddress"`
Identity thor.Bytes32 `json:"identity"`
}
Authority is the authority node info
type Builder ¶
type Builder struct {
// contains filtered or unexported fields
}
Builder helper to build genesis block.
func (*Builder) Build ¶
func (b *Builder) Build(stater *state.Stater) (blk *block.Block, events tx.Events, transfers tx.Transfers, err error)
Build build genesis block according to presets.
func (*Builder) ExtraData ¶
ExtraData set extra data, which will be put into last 28 bytes of genesis parent id.
func (*Builder) ForkConfig ¶
func (b *Builder) ForkConfig(fc thor.ForkConfig) *Builder
ForkConfig set fork config.
type CustomGenesis ¶
type CustomGenesis struct {
LaunchTime uint64 `json:"launchTime"`
GasLimit uint64 `json:"gaslimit"`
ExtraData string `json:"extraData"`
Accounts []Account `json:"accounts"`
Authority []Authority `json:"authority"`
Params Params `json:"params"`
Executor Executor `json:"executor"`
ForkConfig *thor.ForkConfig `json:"forkConfig"`
}
CustomGenesis is user customized genesis
type DevAccount ¶
type DevAccount struct {
Address thor.Address
PrivateKey *ecdsa.PrivateKey
}
DevAccount account for development.
func DevAccounts ¶
func DevAccounts() []DevAccount
DevAccounts returns pre-alloced accounts for solo mode.
type Executor ¶
type Executor struct {
Approvers []Approver `json:"approvers"`
}
Executor is the params for executor info
type Genesis ¶
type Genesis struct {
// contains filtered or unexported fields
}
Genesis to build genesis block.
func NewCustomNet ¶
func NewCustomNet(gen *CustomGenesis) (*Genesis, error)
NewCustomNet create custom network genesis.
type Params ¶
type Params struct {
RewardRatio *hexOrDecimal256 `json:"rewardRatio"`
BaseGasPrice *hexOrDecimal256 `json:"baseGasPrice"`
ProposerEndorsement *hexOrDecimal256 `json:"proposerEndorsement"`
ExecutorAddress *thor.Address `json:"executorAddress"`
}
Params means the chain params for params contract