Documentation ¶
Index ¶
- func Bool[T builtin](v T) bool
- func MapFilter[K comparable, V any](in map[K]V, fn func(k K, v V) bool) map[K]V
- func MapFilterKeys[K comparable, V any](in map[K]V, fn func(k K) bool) map[K]V
- func MapFilterValues[K comparable, V any](in map[K]V, fn func(v V) bool) map[K]V
- func MapMerge[K comparable, V any](m1, m2 map[K]V, fn func(k K, v1, v2 V) V) map[K]V
- func Max[T number](in ...T) T
- func Min[T number](in ...T) T
- func Pointer[T any](v T) *T
- func Slice2Map[T comparable](in []T) map[T]struct{}
- func SliceAddNotExists[T comparable](in []T, elem T) []T
- func SliceAll[T any](in []T, fn func(T) bool) bool
- func SliceAny[T any](in []T, fn func(T) bool) bool
- func SliceContainsElem[T comparable](in []T, elem T) bool
- func SliceDifference[T comparable](oldSlice, newSlice []T) []T
- func SliceFilter[T any](in []T, fn func(T) bool) []T
- func SliceMap[T any, V any](in []T, fn func(T) V) []V
- func SliceReverse[T any](in []T) []T
- func SliceUnion[T comparable](in ...[]T) []T
- func SliceUniq[T comparable](in []T) []T
- func SliceWithout[T any](in []T, fn func(T) bool) []T
- func SliceWithoutElem[T comparable](in []T, elem T) []T
- func SliceZip[T any](in ...[]T) [][]T
- func Sum[T number](in ...T) T
- type NullVal
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Bool ¶ added in v0.4.0
func Bool[T builtin](v T) bool
Bool returns true if element not equal to default value for this type.
func MapFilter ¶ added in v0.3.0
func MapFilter[K comparable, V any](in map[K]V, fn func(k K, v V) bool) map[K]V
MapFilter returns the map which contains elements that `fn(key, value) == true`.
func MapFilterKeys ¶ added in v0.3.0
func MapFilterKeys[K comparable, V any](in map[K]V, fn func(k K) bool) map[K]V
MapFilterKeys returns the map which contains elements that `fn(key) == true`. That is a simplified version of MapFilter.
func MapFilterValues ¶ added in v0.3.0
func MapFilterValues[K comparable, V any](in map[K]V, fn func(v V) bool) map[K]V
MapFilterValues returns the map which contains elements that `fn(value) == true`. That is a simplified version of MapFilter.
func MapMerge ¶ added in v0.3.0
func MapMerge[K comparable, V any](m1, m2 map[K]V, fn func(k K, v1, v2 V) V) map[K]V
MapMerge returns the map which contains all keys from m1, m2 and values from `fn(key, m1Value, m2Value)`.
func Slice2Map ¶ added in v0.9.0
func Slice2Map[T comparable](in []T) map[T]struct{}
Slice2Map make map from slice, which contains all values from `in` as map keys.
func SliceAddNotExists ¶ added in v0.7.0
func SliceAddNotExists[T comparable](in []T, elem T) []T
SliceAddNotExists return `in` with `elem` inside when `elem` not exists in `in`.
func SliceAll ¶ added in v0.4.0
SliceAll returns true when `fn` returns true for all elements from `in`.
func SliceAny ¶ added in v0.4.0
SliceAny returns true when `fn` returns true for at least one element from `in`.
func SliceContainsElem ¶ added in v0.10.0
func SliceContainsElem[T comparable](in []T, elem T) bool
SliceContainsElem returns true when `in` contains elem.
func SliceDifference ¶ added in v0.9.0
func SliceDifference[T comparable](oldSlice, newSlice []T) []T
SliceDifference return the difference between `oldSlice` and `newSlice`. Returns only elements which presented in `newSlice` but not presented in `oldSlice`. Example: [1,2,3], [3,4,5] => [4,5]
func SliceFilter ¶ added in v0.3.0
SliceFilter returns slice of values from `in` where `fn(elem) == true`.
func SliceMap ¶ added in v0.3.0
SliceMap returns the slice where each element of `in` was handled by `fn`.
func SliceReverse ¶ added in v0.4.0
func SliceReverse[T any](in []T) []T
SliceReverse reverse the slice.
func SliceUnion ¶ added in v0.8.0
func SliceUnion[T comparable](in ...[]T) []T
SliceUnion returns only uniq items from all slices.
func SliceUniq ¶ added in v0.3.0
func SliceUniq[T comparable](in []T) []T
SliceUniq returns only unique values from `in`.
func SliceWithout ¶ added in v0.10.0
SliceWithout returns the slice `in` where fn(elem) == true.
func SliceWithoutElem ¶ added in v0.10.0
func SliceWithoutElem[T comparable](in []T, elem T) []T
SliceWithoutElem returns the slice `in` that not contains `elem`.
Types ¶
type NullVal ¶ added in v0.5.0
NullVal represent the nullable value for this type.
func (*NullVal[T]) SetDefault ¶ added in v0.5.0
SetDefault set value `val` if NullVal.Valid == false.