code: func (ld *LineDelimiter) Flush() (err error) {
  	lines := strings.Split(ld.buf.String(), "\n")
  	for _, line := range lines {
  		if _, err = ld.output.Write(ld.delimiter); err != nil {
  			return
  		}
  		if _, err = ld.output.Write([]byte(line)); err != nil {
  			return
  		}
  		if _, err = ld.output.Write(ld.delimiter); err != nil {
  			return
  		}
  		if _, err = ld.output.Write([]byte("\n")); err != nil {
  			return
  		}
  	}
  	return
  }
docs: // Flush all lines up until now.  This will assume insert a linebreak at the current point of the stream.