transport.go 266 B

1234567891011121314151617181920
  1. package io
  2. func Pipe(reader Reader, writer Writer) error {
  3. for {
  4. buffer, err := reader.Read()
  5. if err != nil {
  6. return err
  7. }
  8. if buffer.IsEmpty() {
  9. buffer.Release()
  10. continue
  11. }
  12. err = writer.Write(buffer)
  13. if err != nil {
  14. return err
  15. }
  16. }
  17. }