diff options
Diffstat (limited to 'store/store.go')
-rw-r--r-- | store/store.go | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/store/store.go b/store/store.go index bc9aa8f1a..120778e84 100644 --- a/store/store.go +++ b/store/store.go @@ -18,6 +18,17 @@ type StoreResult struct { type StoreChannel chan StoreResult +func Do(f func(result *StoreResult)) StoreChannel { + storeChannel := make(StoreChannel, 1) + go func() { + result := StoreResult{} + f(&result) + storeChannel <- result + close(storeChannel) + }() + return storeChannel +} + func Must(sc StoreChannel) interface{} { r := <-sc if r.Err != nil { |