ArrayOperations Save

Small library for performing union, intersect, difference and distinct operations on slices in goLang

Project README

Build Status Coverage Status Go Report Card GoDoc

arrayOperations

Small utility library for performing common operations on slices in golang.

I don't promise that these are optimized (not even close!), but they work :)

Quickstart

var a = []int{1, 1, 2, 3}
var b = []int{2, 4}

diff := Difference[int](a, b)

// []int{1, 3, 4}
fmt.Println(diff)

API

FindOne[T any](arr []T, guard func(T) bool) (T, bool)

Reduce[T, A any](arr []T, fn func(A, T) A, init A) A

Filter[T any](arr []T, guard func(T) bool) []T

Map[T any](arr []T, transform func(T) T) []T

Distinct[T comparable](arrs ...[]T) []T

Intersect[T comparable](arrs ...[]T) []T

Union[T comparable](arrs ...[]T) []T

Difference[T comparable](arrs ...[]T) []T

Docs

Docs are available, here

License

MIT

Open Source Agenda is not affiliated with "ArrayOperations" Project. README Source: adam-hanna/arrayOperations
Stars
89
Open Issues
0
Last Commit
1 year ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating