123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- package test
- func init() {
- var pEFace = func(val interface{}) *interface{} {
- return &val
- }
- var pInt = func(val int) *int {
- return &val
- }
- unmarshalCases = append(unmarshalCases, unmarshalCase{
- ptr: (**interface{})(nil),
- input: `"hello"`,
- }, unmarshalCase{
- ptr: (**interface{})(nil),
- input: `1e1`,
- }, unmarshalCase{
- ptr: (**interface{})(nil),
- input: `1.0e1`,
- }, unmarshalCase{
- ptr: (*[]interface{})(nil),
- input: `[1.0e1]`,
- }, unmarshalCase{
- ptr: (*struct {
- Field interface{}
- })(nil),
- input: `{"field":"hello"}`,
- }, unmarshalCase{
- obj: func() interface{} {
- type TestData struct {
- Name string `json:"name"`
- }
- o := &TestData{}
- return &o
- },
- input: `{"name":"value"}`,
- }, unmarshalCase{
- obj: func() interface{} {
- b := true
- return &struct {
- Field interface{} `json:"field"`
- }{&b}
- },
- input: `{"field": null}`,
- }, unmarshalCase{
- obj: func() interface{} {
- var pb *bool
- return &struct {
- Field interface{} `json:"field"`
- }{&pb}
- },
- input: `{"field": null}`,
- }, unmarshalCase{
- obj: func() interface{} {
- b := true
- pb := &b
- return &struct {
- Field interface{} `json:"field"`
- }{&pb}
- },
- input: `{"field": null}`,
- })
- marshalCases = append(marshalCases,
- pEFace("hello"),
- struct {
- Field interface{}
- }{"hello"},
- struct {
- Field interface{}
- }{struct {
- field chan int
- }{}},
- struct {
- Field interface{}
- }{struct {
- Field *int
- }{pInt(100)}},
- )
- }
|