func Identity(_ *Pipeline, _ NodeKind, _ *int) (_ Receiver, _ Finalizer) {
	return
}
Identity is a filter that passes data batches through unmodified.
This filter will be optimized away in a pipeline, so it
does not hurt to add it.
package pipeline
import (
	"errors"
	"reflect"
	"sync"
	"sync/atomic"
)
func NewNode(kind NodeKind, filters ...Filter) Node {
	switch kind {
	case Ordered, Sequential:
		return &seqnode{kind: kind, filters: filters}
	case Parallel:
		return &parnode{filters: filters}
	default:
		panic("Invalid NodeKind in pipeline.NewNode.")
	}
}