Add context
This commit adds and passes context around to (almost) every function. This allows cancelling (almost) every function call globally.
This commit is contained in:
parent
996ecb9f80
commit
3455f491ca
104 changed files with 836 additions and 511 deletions
|
|
@ -1,18 +1,22 @@
|
|||
// Package phpx provides functionalities for interacting with PHP code
|
||||
package phpx
|
||||
|
||||
import "github.com/tkw1536/goprogram/stream"
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/tkw1536/goprogram/stream"
|
||||
)
|
||||
|
||||
// Executor represents anything that can spawn
|
||||
type Executor interface {
|
||||
// Spawn spawns a new (independent) process executing code.
|
||||
// It should return only once the execution terminates.
|
||||
Spawn(str stream.IOStream, code string) error
|
||||
Spawn(ctx context.Context, str stream.IOStream, code string) error
|
||||
}
|
||||
|
||||
// SpawnFunc implements Executor
|
||||
type SpawnFunc func(str stream.IOStream, code string) error
|
||||
type SpawnFunc func(ctx context.Context, str stream.IOStream, code string) error
|
||||
|
||||
func (sf SpawnFunc) Spawn(str stream.IOStream, code string) error {
|
||||
return sf(str, code)
|
||||
func (sf SpawnFunc) Spawn(ctx context.Context, str stream.IOStream, code string) error {
|
||||
return sf(ctx, str, code)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue