jsonrpc2.go
func (r *Response) UnmarshalJSON(data []byte) error {
	type tmpType Response

	// Detect if the "result" field is JSON "null" or just not present
	// by seeing if the field gets overwritten to nil.
	*r = Response{Result: &json.RawMessage{}}

	if err := json.Unmarshal(data, (*tmpType)(r)); err != nil {
		return err
	}
	if r.Result == nil { // JSON "null"
		r.Result = &jsonNull
	} else if len(*r.Result) == 0 {
		r.Result = nil
	}
	return nil
}
func (r *Response) UnmarshalJSON(data []byte) error {
	type tmpType Response

	// Detect if the "result" field is JSON "null" or just not present
	// by seeing if the field gets overwritten to nil.
	*r = Response{Result: &json.RawMessage{}}

	if err := json.Unmarshal(data, (*tmpType)(r)); err != nil {
		return err
	}
	if r.Result == nil { // JSON "null"
		r.Result = &jsonNull
	} else if len(*r.Result) == 0 {
		r.Result = nil
	}
	return nil
}
func ( r * Response ) UnmarshalJSON ( data [ ] byte ) error { type tmpType Response // Detect if the "result" field is JSON "null" or just not present // by seeing if the field gets overwritten to nil. * r = Response { Result : & json . RawMessage { } } if err := json . Unmarshal ( data , ( * tmpType ) ( r ) ) ; err != nil { return err } if r . Result == nil { // JSON "null" r . Result = & jsonNull } else if len ( * r . Result ) == 0 { r . Result = nil } return nil }
// UnmarshalJSON implements json.Unmarshaler.
UnmarshalJSON implements json . Unmarshaler .