(t reflect.Type)
| 345 | } |
| 346 | |
| 347 | func messageDecodeFuncOf(t reflect.Type) decodeFunc { |
| 348 | return func(b []byte, p unsafe.Pointer, flags flags) (int, error) { |
| 349 | m := reflect.NewAt(t, p).Interface().(Message) |
| 350 | |
| 351 | if flags.has(toplevel) { |
| 352 | return len(b), m.Unmarshal(b) |
| 353 | } |
| 354 | |
| 355 | v, n, err := decodeVarlen(b) |
| 356 | if err != nil { |
| 357 | return n, err |
| 358 | } |
| 359 | |
| 360 | return n + len(v), m.Unmarshal(v) |
| 361 | } |
| 362 | } |
no test coverage detected
searching dependent graphs…