From 72ac0c0adf0ba73f9eb0cffdec4c97e25e8c894f Mon Sep 17 00:00:00 2001 From: Gaius Date: Wed, 24 May 2023 16:53:44 +0800 Subject: [PATCH] feat: add Reverse function to slice (#2381) Signed-off-by: Gaius --- pkg/slices/slices.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkg/slices/slices.go b/pkg/slices/slices.go index a7ac0e3cf..c10516f54 100644 --- a/pkg/slices/slices.go +++ b/pkg/slices/slices.go @@ -55,3 +55,10 @@ func RemoveDuplicates[T comparable](s []T) []T { return result } + +// Reverse reverses elements in a collection. +func Reverse[S ~[]T, T any](s S) { + for i, j := 0, len(s)-1; i < j; i, j = i+1, j-1 { + s[i], s[j] = s[j], s[i] + } +}