# Functions

DrainingPipe is similar to io.Pipe() except that writes will always succeed (including the first write that overfills the buffer).
InfinitePipe is similar to io.Pipe() except that writes will always succeed.

# Variables

ErrPipeFull is returned from DrainingPipeWriter.Write if the pipes capacity has been reached.

# Structs

DrainingPipeReader is a reading side of an DrainingPipe, similar to io.PipeReader.
DrainingPipeWriter is a writing side of a DrainingPipe, similar to io.PipeWriter.
InfinitePipeReader is a reading side of an InfinitePipe, similar to io.PipeReader.
InfinitePipeWriter is a writing side of an InfinitePipe, similar to io.PipeWriter.