Documentation ¶ Index ¶ type Chan func Make[T any](size int) Chan[T] func (ch Chan[T]) Receive() (context.Context, T) func (ch Chan[T]) Send(ctx context.Context, data T) type Msg type ReadOnly func FanIn[T any](channelBufferCap int, upstreams ...ReadOnly[T]) ReadOnly[T] func FanOut[T any](count int, channelsBufferCap int, upstream ReadOnly[T]) []ReadOnly[T] func MakeRead[T any](size int) ReadOnly[T] func (ch ReadOnly[T]) Loop(yield func(context.Context, T) bool) func (ch ReadOnly[T]) Receive() (context.Context, T) type WriteOnly func MakeWrite[T any](size int) WriteOnly[T] func (ch WriteOnly[T]) Send(ctx context.Context, data T) Constants ¶ This section is empty. Variables ¶ This section is empty. Functions ¶ This section is empty. Types ¶ type Chan ¶ type Chan[T any] chan Msg[T] Chan represents read/write chan. func Make ¶ func Make[T any](size int) Chan[T] func (Chan[T]) Receive ¶ func (ch Chan[T]) Receive() (context.Context, T) func (Chan[T]) Send ¶ func (ch Chan[T]) Send(ctx context.Context, data T) type Msg ¶ type Msg[T any] struct { Ctx context.Context Data T } type ReadOnly ¶ type ReadOnly[T any] <-chan Msg[T] ReadOnly represents read-only chan. func FanIn ¶ func FanIn[T any](channelBufferCap int, upstreams ...ReadOnly[T]) ReadOnly[T] func FanOut ¶ func FanOut[T any](count int, channelsBufferCap int, upstream ReadOnly[T]) []ReadOnly[T] func MakeRead ¶ func MakeRead[T any](size int) ReadOnly[T] func (ReadOnly[T]) Loop ¶ func (ch ReadOnly[T]) Loop(yield func(context.Context, T) bool) func (ReadOnly[T]) Receive ¶ func (ch ReadOnly[T]) Receive() (context.Context, T) type WriteOnly ¶ type WriteOnly[T any] chan<- Msg[T] WriteOnly represents write-only chan. func MakeWrite ¶ func MakeWrite[T any](size int) WriteOnly[T] func (WriteOnly[T]) Send ¶ func (ch WriteOnly[T]) Send(ctx context.Context, data T) Source Files ¶ View all Source files chan.go Click to show internal directories. Click to hide internal directories.