(b []byte, p unsafe.Pointer, t reflect.Type, unexported bool, offset uintptr, decode decodeFunc)
| 1232 | } |
| 1233 | |
| 1234 | func (d decoder) decodeEmbeddedStructPointer(b []byte, p unsafe.Pointer, t reflect.Type, unexported bool, offset uintptr, decode decodeFunc) ([]byte, error) { |
| 1235 | v := *(*unsafe.Pointer)(p) |
| 1236 | |
| 1237 | if v == nil { |
| 1238 | if unexported { |
| 1239 | return nil, fmt.Errorf("json: cannot set embedded pointer to unexported struct: %s", t) |
| 1240 | } |
| 1241 | v = unsafe.Pointer(reflect.New(t).Pointer()) |
| 1242 | *(*unsafe.Pointer)(p) = v |
| 1243 | } |
| 1244 | |
| 1245 | return decode(d, b, unsafe.Pointer(uintptr(v)+offset)) |
| 1246 | } |
| 1247 | |
| 1248 | func (d decoder) decodePointer(b []byte, p unsafe.Pointer, t reflect.Type, decode decodeFunc) ([]byte, error) { |
| 1249 | if hasNullPrefix(b) { |
no outgoing calls
no test coverage detected