forked from cerc-io/plugeth
367c329b88
* whisper: fixes warnings from the code linter * whisper: more non-API-breaking changes The remaining lint errors are because of auto-generated files and one is because an exported function has a non- exported return type. Changing this would break the API, and will be part of another commit for easier reversal. * whisper: un-export NewSentMessage to please the linter This is an API change, which is why it's in its own commit. This change was initiated after the linter complained that the returned type wasn't exported. I chose to un-export the function instead of exporting the type, because that type is an implementation detail that I would like to change in the near future to make the code more readable and with an increased coverage. * whisper: update gencodec output after upgrading it to new lint standards
67 lines
1.6 KiB
Go
67 lines
1.6 KiB
Go
// 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)
|
|
|
|
// MarshalJSON marshals type Criteria to a json string
|
|
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)
|
|
}
|
|
|
|
// UnmarshalJSON unmarshals type Criteria to a json string
|
|
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
|
|
}
|