diff options
author | gluk256 <gluk256@users.noreply.github.com> | 2017-11-04 04:29:49 +0800 |
---|---|---|
committer | Felix Lange <fjl@users.noreply.github.com> | 2017-11-04 04:29:49 +0800 |
commit | 9f7cd7568275e2db45a3d90429f7c92bf7dfbf19 (patch) | |
tree | e3fd637e6cd7b9968b4bedb030959167e299c136 /whisper/whisperv6/gen_criteria_json.go | |
parent | 0131bd6ff9b1850fdd307715c62174af4f05d2c7 (diff) | |
download | go-tangerine-9f7cd7568275e2db45a3d90429f7c92bf7dfbf19.tar go-tangerine-9f7cd7568275e2db45a3d90429f7c92bf7dfbf19.tar.gz go-tangerine-9f7cd7568275e2db45a3d90429f7c92bf7dfbf19.tar.bz2 go-tangerine-9f7cd7568275e2db45a3d90429f7c92bf7dfbf19.tar.lz go-tangerine-9f7cd7568275e2db45a3d90429f7c92bf7dfbf19.tar.xz go-tangerine-9f7cd7568275e2db45a3d90429f7c92bf7dfbf19.tar.zst go-tangerine-9f7cd7568275e2db45a3d90429f7c92bf7dfbf19.zip |
whisper/whisperv6: initial commit (clone of v5) (#15324)
Diffstat (limited to 'whisper/whisperv6/gen_criteria_json.go')
-rw-r--r-- | whisper/whisperv6/gen_criteria_json.go | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/whisper/whisperv6/gen_criteria_json.go b/whisper/whisperv6/gen_criteria_json.go new file mode 100644 index 000000000..52a4d3cb6 --- /dev/null +++ b/whisper/whisperv6/gen_criteria_json.go @@ -0,0 +1,64 @@ +// Code generated by github.com/fjl/gencodec. DO NOT EDIT. + +package whisperv6 + +import ( + "encoding/json" + + "github.com/ethereum/go-ethereum/common/hexutil" +) + +var _ = (*criteriaOverride)(nil) + +func (c Criteria) MarshalJSON() ([]byte, error) { + type Criteria struct { + SymKeyID string `json:"symKeyID"` + PrivateKeyID string `json:"privateKeyID"` + Sig hexutil.Bytes `json:"sig"` + MinPow float64 `json:"minPow"` + Topics []TopicType `json:"topics"` + AllowP2P bool `json:"allowP2P"` + } + var enc Criteria + enc.SymKeyID = c.SymKeyID + enc.PrivateKeyID = c.PrivateKeyID + enc.Sig = c.Sig + enc.MinPow = c.MinPow + enc.Topics = c.Topics + enc.AllowP2P = c.AllowP2P + return json.Marshal(&enc) +} + +func (c *Criteria) UnmarshalJSON(input []byte) error { + type Criteria struct { + SymKeyID *string `json:"symKeyID"` + PrivateKeyID *string `json:"privateKeyID"` + Sig hexutil.Bytes `json:"sig"` + MinPow *float64 `json:"minPow"` + Topics []TopicType `json:"topics"` + AllowP2P *bool `json:"allowP2P"` + } + var dec Criteria + if err := json.Unmarshal(input, &dec); err != nil { + return err + } + if dec.SymKeyID != nil { + c.SymKeyID = *dec.SymKeyID + } + if dec.PrivateKeyID != nil { + c.PrivateKeyID = *dec.PrivateKeyID + } + if dec.Sig != nil { + c.Sig = dec.Sig + } + if dec.MinPow != nil { + c.MinPow = *dec.MinPow + } + if dec.Topics != nil { + c.Topics = dec.Topics + } + if dec.AllowP2P != nil { + c.AllowP2P = *dec.AllowP2P + } + return nil +} |