pipe

package
v1.1.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 12, 2023 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Pipe

type Pipe struct {
	Sender              Sender
	Receiver            Receiver
	OnReceiveCompletion func()
	OnSendCompletion    func()
}

func New

func New(req Request) *Pipe

func NewWithFunction

func NewWithFunction(f func(context.Context) (interface{}, error)) (*Pipe, func())

type Receiver

type Receiver interface {
	Receive() bool
	Cancel()
	Status() Status
	Request() interface{}
}

type Request

type Request struct {
	Payload  interface{}
	Canceled bool
}

type Sender

type Sender interface {
	Request() Request
	Update(v interface{})
	Finalize(v interface{}, err error)
	Status() Status
}

type Status

type Status struct {
	Canceled  bool
	Completed bool
	Err       error
	Value     interface{}
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL