DecoderFrom allows augmenting any type with a DecodeMsg method into a method that reads from Reader and returns a T. Provide an instance of T. This value isn't used. See ReadArray/ReadMap "struct" examples for usage.
(r *Reader, _ T)
| 306 | // Provide an instance of T. This value isn't used. |
| 307 | // See ReadArray/ReadMap "struct" examples for usage. |
| 308 | func DecoderFrom[T any, PT DecodePtr[T]](r *Reader, _ T) func() (T, error) { |
| 309 | return func() (T, error) { |
| 310 | var t T |
| 311 | tPtr := PT(&t) |
| 312 | err := tPtr.DecodeMsg(r) |
| 313 | return t, err |
| 314 | } |
| 315 | } |
| 316 | |
| 317 | // FlexibleEncoder is a constraint for types where either T or *T implements Encodable |
| 318 | type FlexibleEncoder[T any] interface { |
searching dependent graphs…