fix planet float
This commit is contained in:
@@ -10141,6 +10141,41 @@ func (s *OptDateTime) UnmarshalJSON(data []byte) error {
|
||||
return s.Decode(d, json.DecodeDateTime)
|
||||
}
|
||||
|
||||
// Encode encodes float64 as json.
|
||||
func (o OptFloat64) Encode(e *jx.Encoder) {
|
||||
if !o.Set {
|
||||
return
|
||||
}
|
||||
e.Float64(float64(o.Value))
|
||||
}
|
||||
|
||||
// Decode decodes float64 from json.
|
||||
func (o *OptFloat64) Decode(d *jx.Decoder) error {
|
||||
if o == nil {
|
||||
return errors.New("invalid: unable to decode OptFloat64 to nil")
|
||||
}
|
||||
o.Set = true
|
||||
v, err := d.Float64()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
o.Value = float64(v)
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements stdjson.Marshaler.
|
||||
func (s OptFloat64) MarshalJSON() ([]byte, error) {
|
||||
e := jx.Encoder{}
|
||||
s.Encode(&e)
|
||||
return e.Bytes(), nil
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements stdjson.Unmarshaler.
|
||||
func (s *OptFloat64) UnmarshalJSON(data []byte) error {
|
||||
d := jx.DecodeBytes(data)
|
||||
return s.Decode(d)
|
||||
}
|
||||
|
||||
// Encode encodes int as json.
|
||||
func (o OptInt) Encode(e *jx.Encoder) {
|
||||
if !o.Set {
|
||||
|
Reference in New Issue
Block a user