1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
package csv
// Merely copies records from input to output - delimiting munging
// is done by the tool.
type UseTabProcess struct {
OnRead bool
}
func (p *UseTabProcess) Run(reader Reader, builder WriterBuilder, errCh chan<- error) {
errCh <- func() (err error) {
defer reader.Close()
// create a new output stream
writer := builder(reader.Header())
defer writer.Close(err)
for data := range reader.C() {
if err = writer.Write(data); err != nil {
return err
}
}
return reader.Error()
}()
}
|