12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- package zioutil
- import (
- "fmt"
- "io"
- )
- type ReadWriterBind struct {
- Reader io.Reader
- Writer io.Writer
- }
- func (rwb ReadWriterBind) Read(b []byte) (n int, err error) {
- return rwb.Reader.Read(b)
- }
- func (rwb ReadWriterBind) Write(b []byte) (n int, err error) {
- return rwb.Writer.Write(b)
- }
- type ReadWriteCloserBind struct {
- ReadCloser io.ReadCloser
- WriteCloser io.WriteCloser
- }
- func (rwb ReadWriteCloserBind) Read(b []byte) (n int, err error) {
- return rwb.ReadCloser.Read(b)
- }
- func (rwb ReadWriteCloserBind) Write(b []byte) (n int, err error) {
- return rwb.WriteCloser.Write(b)
- }
- func (rwb ReadWriteCloserBind) Close() error {
- e1 := rwb.ReadCloser.Close()
- e2 := rwb.WriteCloser.Close()
- if e1 != nil {
- return e1
- }
- if e2 != nil {
- return e2
- }
- return nil
- }
- type Reader2ReadCloser struct {
- Reader io.Reader
- }
- func (rcb Reader2ReadCloser) Read(b []byte) (n int, err error) {
- return rcb.Reader.Read(b)
- }
- func (rcb Reader2ReadCloser) Close() error {
- return nil
- }
- type Writer2ReadCloser struct {
- Writer io.Writer
- }
- func (wcb Writer2ReadCloser) Write(b []byte) (n int, err error) {
- return wcb.Writer.Write(b)
- }
- func (wcb Writer2ReadCloser) Close() error {
- return nil
- }
- type NullWriter struct {
- }
- func (nw NullWriter) Write(b []byte) (int, error) {
- return len(b), nil
- }
- type NullReader struct {
- }
- func (nw NullReader) Read(b []byte) (int, error) {
- return 0, fmt.Errorf("null reader")
- }
|