-
Notifications
You must be signed in to change notification settings - Fork 0
/
types.go
35 lines (31 loc) · 1.63 KB
/
types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package v018
import (
sdk "github.com/furyaxyz/fuxchain/libs/cosmos-sdk/types"
"github.com/furyaxyz/fuxchain/x/evm/legacy/v0_16"
)
type (
// GenesisState defines the evm module genesis state
GenesisState struct {
Accounts []v0_16.GenesisAccount `json:"accounts"`
TxsLogs []v0_16.TransactionLogs `json:"txs_logs"`
ContractDeploymentWhitelist AddressList `json:"contract_deployment_whitelist"`
ContractBlockedList AddressList `json:"contract_blocked_list"`
ChainConfig v0_16.ChainConfig `json:"chain_config"`
Params Params `json:"params"`
}
AddressList []sdk.AccAddress
Params struct {
// EnableCreate toggles state transitions that use the vm.Create function
EnableCreate bool `json:"enable_create" yaml:"enable_create"`
// EnableCall toggles state transitions that use the vm.Call function
EnableCall bool `json:"enable_call" yaml:"enable_call"`
// ExtraEIPs defines the additional EIPs for the vm.Config
ExtraEIPs []int `json:"extra_eips" yaml:"extra_eips"`
// EnableContractDeploymentWhitelist controls the authorization of contract deployer
EnableContractDeploymentWhitelist bool `json:"enable_contract_deployment_whitelist" yaml:"enable_contract_deployment_whitelist"`
// EnableContractBlockedList controls the availability of contracts
EnableContractBlockedList bool `json:"enable_contract_blocked_list" yaml:"enable_contract_blocked_list"`
// MaxGasLimit defines the max gas limit in transaction
MaxGasLimitPerTx uint64 `json:"max_gas_limit_per_tx" yaml:"max_gas_limit_per_tx"`
}
)