gen_newmessage_json.go 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. // Code generated by github.com/fjl/gencodec. DO NOT EDIT.
  2. package whisperv5
  3. import (
  4. "encoding/json"
  5. "github.com/ethereum/go-ethereum/common/hexutil"
  6. )
  7. var _ = (*newMessageOverride)(nil)
  8. func (n NewMessage) MarshalJSON() ([]byte, error) {
  9. type NewMessage struct {
  10. SymKeyID string `json:"symKeyID"`
  11. PublicKey hexutil.Bytes `json:"pubKey"`
  12. Sig string `json:"sig"`
  13. TTL uint32 `json:"ttl"`
  14. Topic TopicType `json:"topic"`
  15. Payload hexutil.Bytes `json:"payload"`
  16. Padding hexutil.Bytes `json:"padding"`
  17. PowTime uint32 `json:"powTime"`
  18. PowTarget float64 `json:"powTarget"`
  19. TargetPeer string `json:"targetPeer"`
  20. }
  21. var enc NewMessage
  22. enc.SymKeyID = n.SymKeyID
  23. enc.PublicKey = n.PublicKey
  24. enc.Sig = n.Sig
  25. enc.TTL = n.TTL
  26. enc.Topic = n.Topic
  27. enc.Payload = n.Payload
  28. enc.Padding = n.Padding
  29. enc.PowTime = n.PowTime
  30. enc.PowTarget = n.PowTarget
  31. enc.TargetPeer = n.TargetPeer
  32. return json.Marshal(&enc)
  33. }
  34. func (n *NewMessage) UnmarshalJSON(input []byte) error {
  35. type NewMessage struct {
  36. SymKeyID *string `json:"symKeyID"`
  37. PublicKey *hexutil.Bytes `json:"pubKey"`
  38. Sig *string `json:"sig"`
  39. TTL *uint32 `json:"ttl"`
  40. Topic *TopicType `json:"topic"`
  41. Payload *hexutil.Bytes `json:"payload"`
  42. Padding *hexutil.Bytes `json:"padding"`
  43. PowTime *uint32 `json:"powTime"`
  44. PowTarget *float64 `json:"powTarget"`
  45. TargetPeer *string `json:"targetPeer"`
  46. }
  47. var dec NewMessage
  48. if err := json.Unmarshal(input, &dec); err != nil {
  49. return err
  50. }
  51. if dec.SymKeyID != nil {
  52. n.SymKeyID = *dec.SymKeyID
  53. }
  54. if dec.PublicKey != nil {
  55. n.PublicKey = *dec.PublicKey
  56. }
  57. if dec.Sig != nil {
  58. n.Sig = *dec.Sig
  59. }
  60. if dec.TTL != nil {
  61. n.TTL = *dec.TTL
  62. }
  63. if dec.Topic != nil {
  64. n.Topic = *dec.Topic
  65. }
  66. if dec.Payload != nil {
  67. n.Payload = *dec.Payload
  68. }
  69. if dec.Padding != nil {
  70. n.Padding = *dec.Padding
  71. }
  72. if dec.PowTime != nil {
  73. n.PowTime = *dec.PowTime
  74. }
  75. if dec.PowTarget != nil {
  76. n.PowTarget = *dec.PowTarget
  77. }
  78. if dec.TargetPeer != nil {
  79. n.TargetPeer = *dec.TargetPeer
  80. }
  81. return nil
  82. }