Files
go-cuckoo/compare.go
M.V. Hutz 5c39182958
All checks were successful
CI / Check PR Title (pull_request) Successful in 29s
CI / Go Lint (pull_request) Successful in 39s
CI / Makefile Lint (pull_request) Successful in 48s
CI / Markdown Lint (pull_request) Successful in 31s
CI / Unit Tests (pull_request) Successful in 37s
CI / Fuzz Tests (pull_request) Successful in 1m38s
CI / Mutation Tests (pull_request) Successful in 1m19s
refactor: HashTable -> Table, table -> subtable
2026-04-13 21:11:37 -04:00

18 lines
639 B
Go

package cuckoo
// An EqualFunc determines whethers two keys are 'equal'. Keys that are 'equal'
// are teated as the same by the [Table]. A good EqualFunc is pure,
// deterministic, and fast. By default, [New] uses [DefaultEqualFunc].
//
// This function MUST NOT return true if the [Hash] digest of two keys
// are different: the [Table] will not work.
type EqualFunc[K any] = func(a, b K) bool
// DefaultEqualFunc compares two keys by strict equality. Returns true if the
// keys have [equal values].
//
// [equal values]: https://go.dev/ref/spec#Comparison_operators
func DefaultEqualFunc[K comparable](a, b K) bool {
return a == b
}