in tattler.go [180:194]
func (r *Runner) AddReader(ctx context.Context, reader Reader) error {
r.mu.Lock()
defer r.mu.Unlock()
if err := reader.SetOut(ctx, r.input); err != nil {
return fmt.Errorf("Reader(%T).SetOut(): %w", r, err)
}
if r.started {
if err := reader.Run(ctx); err != nil {
return fmt.Errorf("reader(%T): %w", reader, err)
}
}
r.readers = append(r.readers, reader)
return nil
}