func AppleDelta(in <-chan Apple, out1, out2 chan<- Apple) {
	for v := range in {
		select {
		case out1 <- v:
			out2 <- v
		case out2 <- v:
			out1 <- v
		}
	}
	close(out1)
	close(out2)
}
// AppleDelta duplicates a stream of Apple to two output channels.
// When the sender closes the input channel, both output channels are closed then the function terminates.
//
// It is part of the Plumbing function suite for Apple.
AppleDelta duplicates a stream of Apple to two output channels.
When the sender closes the input channel, both output channels are closed then the function terminates.

It is part of the Plumbing function suite for Apple.
// AppleDelta duplicates a stream of Apple to two output channels . // When the sender closes the input channel both output channels are closed then the function terminates . // // It is part of the Plumbing function suite for Apple .
func AppleDelta(in <-chan Apple, out1, out2 chan<- Apple) {
	for v := range in {
		select {
		case out1 <- v:
			out2 <- v
		case out2 <- v:
			out1 <- v
		}
	}
	close(out1)
	close(out2)
}
func AppleDelta ( in <- chan Apple , out1 , out2 chan <- Apple ) { for v := range in { select { case out1 <- v : out2 <- v case out2 <- v : out1 <- v } } close ( out1 ) close ( out2 ) }
AppleDelta duplicates a stream of Apple to two output channels.
AppleDelta duplicates a stream of Apple to two output channels .