// Code generated by github.com/fjl/gencodec. DO NOT EDIT. package params import ( "encoding/json" "math/big" "github.com/tangerine-network/go-tangerine/common" "github.com/tangerine-network/go-tangerine/common/math" ) var _ = (*dexconConfigSpecMarshaling)(nil) // MarshalJSON marshals as JSON. func (d DexconConfig) MarshalJSON() ([]byte, error) { type DexconConfig struct { GenesisCRSText string `json:"genesisCRSText"` Owner common.Address `json:"owner"` MinStake *math.HexOrDecimal256 `json:"minStake"` LockupPeriod uint64 `json:"lockupPeriod"` MiningVelocity float32 `json:"miningVelocity"` NextHalvingSupply *math.HexOrDecimal256 `json:"nextHalvingSupply"` LastHalvedAmount *math.HexOrDecimal256 `json:"lastHalvedAmount"` MinGasPrice *math.HexOrDecimal256 `json:"minGasPrice"` BlockGasLimit uint64 `json:"blockGasLimit"` LambdaBA uint64 `json:"lambdaBA"` LambdaDKG uint64 `json:"lambdaDKG"` NotaryParamAlpha float32 `json:"notaryParamAlpha"` NotaryParamBeta float32 `json:"notaryParamBeta"` RoundLength uint64 `json:"roundLength"` MinBlockInterval uint64 `json:"minBlockInterval"` FineValues []*math.HexOrDecimal256 `json:"fineValues"` IsConsortium bool `json:"isConsortium"` AddressWhitelist []common.Address `json:"addressWhitelist"` } var enc DexconConfig enc.GenesisCRSText = d.GenesisCRSText enc.Owner = d.Owner enc.MinStake = (*math.HexOrDecimal256)(d.MinStake) enc.LockupPeriod = d.LockupPeriod enc.MiningVelocity = d.MiningVelocity enc.NextHalvingSupply = (*math.HexOrDecimal256)(d.NextHalvingSupply) enc.LastHalvedAmount = (*math.HexOrDecimal256)(d.LastHalvedAmount) enc.MinGasPrice = (*math.HexOrDecimal256)(d.MinGasPrice) enc.BlockGasLimit = d.BlockGasLimit enc.LambdaBA = d.LambdaBA enc.LambdaDKG = d.LambdaDKG enc.NotaryParamAlpha = d.NotaryParamAlpha enc.NotaryParamBeta = d.NotaryParamBeta enc.RoundLength = d.RoundLength enc.MinBlockInterval = d.MinBlockInterval if d.FineValues != nil { enc.FineValues = make([]*math.HexOrDecimal256, len(d.FineValues)) for k, v := range d.FineValues { enc.FineValues[k] = (*math.HexOrDecimal256)(v) } } enc.IsConsortium = d.IsConsortium enc.AddressWhitelist = d.AddressWhitelist return json.Marshal(&enc) } // UnmarshalJSON unmarshals from JSON. func (d *DexconConfig) UnmarshalJSON(input []byte) error { type DexconConfig struct { GenesisCRSText *string `json:"genesisCRSText"` Owner *common.Address `json:"owner"` MinStake *math.HexOrDecimal256 `json:"minStake"` LockupPeriod *uint64 `json:"lockupPeriod"` MiningVelocity *float32 `json:"miningVelocity"` NextHalvingSupply *math.HexOrDecimal256 `json:"nextHalvingSupply"` LastHalvedAmount *math.HexOrDecimal256 `json:"lastHalvedAmount"` MinGasPrice *math.HexOrDecimal256 `json:"minGasPrice"` BlockGasLimit *uint64 `json:"blockGasLimit"` LambdaBA *uint64 `json:"lambdaBA"` LambdaDKG *uint64 `json:"lambdaDKG"` NotaryParamAlpha *float32 `json:"notaryParamAlpha"` NotaryParamBeta *float32 `json:"notaryParamBeta"` RoundLength *uint64 `json:"roundLength"` MinBlockInterval *uint64 `json:"minBlockInterval"` FineValues []*math.HexOrDecimal256 `json:"fineValues"` IsConsortium *bool `json:"isConsortium"` AddressWhitelist []common.Address `json:"addressWhitelist"` } var dec DexconConfig if err := json.Unmarshal(input, &dec); err != nil { return err } if dec.GenesisCRSText != nil { d.GenesisCRSText = *dec.GenesisCRSText } if dec.Owner != nil { d.Owner = *dec.Owner } if dec.MinStake != nil { d.MinStake = (*big.Int)(dec.MinStake) } if dec.LockupPeriod != nil { d.LockupPeriod = *dec.LockupPeriod } if dec.MiningVelocity != nil { d.MiningVelocity = *dec.MiningVelocity } if dec.NextHalvingSupply != nil { d.NextHalvingSupply = (*big.Int)(dec.NextHalvingSupply) } if dec.LastHalvedAmount != nil { d.LastHalvedAmount = (*big.Int)(dec.LastHalvedAmount) } if dec.MinGasPrice != nil { d.MinGasPrice = (*big.Int)(dec.MinGasPrice) } if dec.BlockGasLimit != nil { d.BlockGasLimit = *dec.BlockGasLimit } if dec.LambdaBA != nil { d.LambdaBA = *dec.LambdaBA } if dec.LambdaDKG != nil { d.LambdaDKG = *dec.LambdaDKG } if dec.NotaryParamAlpha != nil { d.NotaryParamAlpha = *dec.NotaryParamAlpha } if dec.NotaryParamBeta != nil { d.NotaryParamBeta = *dec.NotaryParamBeta } if dec.RoundLength != nil { d.RoundLength = *dec.RoundLength } if dec.MinBlockInterval != nil { d.MinBlockInterval = *dec.MinBlockInterval } if dec.FineValues != nil { d.FineValues = make([]*big.Int, len(dec.FineValues)) for k, v := range dec.FineValues { d.FineValues[k] = (*big.Int)(v) } } if dec.IsConsortium != nil { d.IsConsortium = *dec.IsConsortium } if dec.AddressWhitelist != nil { d.AddressWhitelist = dec.AddressWhitelist } return nil }