func WriteLines(writer io.Writer) Filter {
	return FilterFunc(func(arg Arg) error {
		for s := range arg.In {
			if _, err := writer.Write(append([]byte(s),'\n')); err != nil {
				return err
			}
			arg.Out <- s
		}
		return nil
	})
}
func WriteLines(writer io.Writer) Filter {
	return FilterFunc(func(arg Arg) error {
		for s := range arg.In {
			if _, err := writer.Write(append([]byte(s),'\n')); err != nil {
				return err
			}
			arg.Out <- s
		}
		return nil
	})
}
func WriteLines ( writer io . Writer ) Filter { return FilterFunc ( func ( arg Arg ) error { for s := range arg . In { if _ , err := writer . Write ( append ( [ ] byte ( s ) , '\n' ) ) ; err != nil { return err } arg . Out <- s } return nil } ) }
// WriteLines prints each input item s followed by a newline to
// writer; and in addition it emits s.  Therefore WriteLines()
// can be used like the "tee" command, which can often be useful
// for debugging.
WriteLines prints each input item s followed by a newline to writer ; and in addition it emits s . Therefore WriteLines () can be used like the tee command which can often be useful for debugging .