Versions in this module Expand all Collapse all v0 v0.0.3 May 27, 2023 Changes in this version + var ErrRecoveredFromPanic = errors.New("kytsunya: recovered from panic") + var ErrTimeout = errors.New("kytsunya: goroutine timed out") + var ErrWaitWithoutWaitGroup = errors.New(...) + func Filter(input []T, f func(i int, val T) bool) []T + func ForChan(ch chan T, f func(val T)) + func ForEach(data []T, f func(i int, val T)) + func ForEachErr(data []T, f func(i int, val T) error) error + func ForErrChan(ch chan T, f func(val T) error) error + func Map(data []T, f func(i int, val T) V) []V + func MapErr(data []T, f func(i int, val T) (V, error)) ([]V, error) + func Reduce(input []T, f func(val T, acc V) V) V + type EachRunner struct + func NewEachRunner(data []T) *EachRunner[T, V] + func (er *EachRunner[T, V]) Handle(handler func(val T) Result[V]) chan Result[V] + func (er *EachRunner[T, V]) WithRecover() *EachRunner[T, V] + type ErrRunner struct + func Erroutine() *ErrRunner[T] + func (r *ErrRunner[T]) Spawn(f func() Result[T]) *ErrRunner[T] + func (r *ErrRunner[T]) Wait() Result[T] + func (r *ErrRunner[T]) WaitAsync() chan Result[T] + func (r *ErrRunner[T]) WithRecover() *ErrRunner[T] + func (r *ErrRunner[T]) WithTimeout(timeout time.Duration) *ErrRunner[T] + type ErrTaskRunner struct + func NewErrorBox() *ErrTaskRunner[T] + func (tr *ErrTaskRunner[T]) AddTask(f func() Result[T]) *ErrTaskRunner[T] + func (tr *ErrTaskRunner[T]) Run() chan Result[T] + func (tr *ErrTaskRunner[T]) WithRecover() *ErrTaskRunner[T] + type Result struct + Data T + Err error + type Runner struct + func Goroutine() *Runner + func (r *Runner) Spawn(f func()) Waiter + func (r *Runner) WithRecover() *Runner + func (r *Runner) WithWaitGroup() *Runner + type RunnerFunc interface + Run func() Waiter + type TaskFiller interface + AddTask func(f func()) TaskFiller + AfterAll func(f func()) RunnerFunc + Run func() Waiter + type TaskRunner struct + func NewBox() *TaskRunner + func (tr *TaskRunner) AddTask(f func()) TaskFiller + func (tr *TaskRunner) AfterAll(f func()) RunnerFunc + func (tr *TaskRunner) Run() Waiter + func (tr *TaskRunner) Wait() + func (tr *TaskRunner) WithRecover() *TaskRunner + func (tr *TaskRunner) WithWaitGroup() *TaskRunner + type Waiter interface + Wait func() v0.0.2 May 26, 2023