From 4832aa9d6c435d7c33c675c10157c04d2a02193e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20Schw=C3=B6rer?= Date: Fri, 31 Jan 2025 21:16:42 +0100 Subject: [PATCH] v0.0.563 Add 'ArrContains' alias for 'InArray' --- goextVersion.go | 4 ++-- langext/array.go | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/goextVersion.go b/goextVersion.go index f64c7a9..d7afc67 100644 --- a/goextVersion.go +++ b/goextVersion.go @@ -1,5 +1,5 @@ package goext -const GoextVersion = "0.0.562" +const GoextVersion = "0.0.563" -const GoextVersionTimestamp = "2025-01-29T11:24:20+0100" +const GoextVersionTimestamp = "2025-01-31T21:16:42+0100" diff --git a/langext/array.go b/langext/array.go index c598a4d..2dc496a 100644 --- a/langext/array.go +++ b/langext/array.go @@ -24,6 +24,7 @@ func Range[T IntegerConstraint](start T, end T) []T { return r } +// ForceArray ensures that the given array is not nil (nil will be converted to empty) func ForceArray[T any](v []T) []T { if v == nil { return make([]T, 0) @@ -47,6 +48,16 @@ func InArray[T comparable](needle T, haystack []T) bool { return false } +// ArrContains checks if the value is contained in the array (same as InArray, but odther name for better findability) +func ArrContains[T comparable](haystack []T, needle T) bool { + for _, v := range haystack { + if v == needle { + return true + } + } + return false +} + func ArrUnique[T comparable](array []T) []T { m := make(map[T]bool, len(array)) for _, v := range array {