From 431500f10e7c8eaf8a030cb2f37b1ae646013139 Mon Sep 17 00:00:00 2001 From: RyoIwahara Date: Mon, 19 Aug 2024 14:25:32 +0900 Subject: [PATCH] pkg/sync/aliases.go: add go/src/sync/oncefunc.go aliases --- pkg/sync/aliases.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/pkg/sync/aliases.go b/pkg/sync/aliases.go index 0d4316254..ccbac0a64 100644 --- a/pkg/sync/aliases.go +++ b/pkg/sync/aliases.go @@ -34,3 +34,18 @@ type ( func NewCond(l Locker) *Cond { return sync.NewCond(l) } + +// OnceFunc is a wrapper around sync.OnceFunc. +func OnceFunc(f func()) func() { + return sync.OnceFunc(f) +} + +// OnceValue is a wrapper around sync.OnceValue. +func OnceValue[T any](f func() T) func() T { + return sync.OnceValue(f) +} + +// OnceValues is a wrapper around sync.OnceValues. +func OnceValues[T1, T2 any](f func() (T1, T2)) func() (T1, T2) { + return sync.OnceValues(f) +}