package ctxio // func TeeReader(r Reader, w Writer) Reader { // return &teeReader{r, w} // } // type teeReader struct { // r Reader // w Writer // } // func (t *teeReader) Read(ctx context.Context, p []byte) (n int, err error) { // n, err = t.r.Read(ctx, p) // if n > 0 { // if n, err := t.w.Write(ctx, p[:n]); err != nil { // return n, err // } // } // return // }