24 lines
343 B
Go
24 lines
343 B
Go
package interfaces
|
|
|
|
import "context"
|
|
|
|
type Input interface {
|
|
Start(context.Context, chan<- Row, chan<- error) error
|
|
Close()
|
|
}
|
|
|
|
type Pipe interface {
|
|
Start(Row) (Row, error)
|
|
Next() []Pipe
|
|
Close()
|
|
}
|
|
|
|
type Output interface {
|
|
Start(context.Context, <-chan Row, chan<- error) error
|
|
Close()
|
|
}
|
|
|
|
type Row interface {
|
|
Bytes() ([]byte, error)
|
|
}
|