aboutsummaryrefslogtreecommitdiff
path: root/retry.go
diff options
context:
space:
mode:
authorMatt Joiner <anacrolix@gmail.com>2021-09-04 21:09:25 +1000
committerChris Wendt <chrismwendt@gmail.com>2022-06-08 03:02:44 -0600
commit8d82a394042feb858f8b8b40f199f9ede5cc1b83 (patch)
treebfa5db946ca7ccb8d2c6cdf0f2e63c97382e90fc /retry.go
parentBIG change: generic Var[T], txVar, etc. (diff)
downloadstm-8d82a394042feb858f8b8b40f199f9ede5cc1b83.tar.gz
stm-8d82a394042feb858f8b8b40f199f9ede5cc1b83.tar.xz
Make Operation generic
From https://github.com/anacrolix/stm/commit/80e033aa1f2218b83fb5891671ed795de72e19d5
Diffstat (limited to 'retry.go')
-rw-r--r--retry.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/retry.go b/retry.go
index 1997b18..1adcfd0 100644
--- a/retry.go
+++ b/retry.go
@@ -11,7 +11,7 @@ var retries = pprof.NewProfile("stmRetries")
var retry = &struct{}{}
// catchRetry returns true if fn calls tx.Retry.
-func catchRetry(fn Operation, tx *Tx) (result interface{}, gotRetry bool) {
+func catchRetry[R any](fn Operation[R], tx *Tx) (result R, gotRetry bool) {
defer func() {
if r := recover(); r == retry {
gotRetry = true