12 lines
285 B
Go
12 lines
285 B
Go
|
package promise
|
||
|
|
||
|
// Go is a basic promise implementation: it wraps calls a function in a goroutine,
|
||
|
// and returns a channel which will later return the function's return value.
|
||
|
func Go(f func() error) chan error {
|
||
|
ch := make(chan error, 1)
|
||
|
go func() {
|
||
|
ch <- f()
|
||
|
}()
|
||
|
return ch
|
||
|
}
|