utils

package
v1.10.19 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 29, 2024 License: BSD-3-Clause Imports: 9 Imported by: 184

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Compare added in v1.10.18

func Compare[T constraints.Ordered](x, y T) int

Compare returns

-1 if x is less than y,
 0 if x equals y,
 1 if x is greater than y.

TODO: Remove after updating to go1.21.

func Detach added in v1.9.4

func Detach(ctx context.Context) context.Context

func Err added in v1.10.15

func Err(errors ...error) error

func GetStacktrace added in v1.7.17

func GetStacktrace(all bool) string

func IsSortedAndUnique

func IsSortedAndUnique[T Sortable[T]](s []T) bool

Returns true iff the elements in [s] are unique and sorted.

func IsSortedAndUniqueByHash added in v1.9.4

func IsSortedAndUniqueByHash[T ~[]byte](s []T) bool

Returns true iff the elements in [s] are unique and sorted based by their hashes.

func IsSortedAndUniqueOrdered added in v1.9.4

func IsSortedAndUniqueOrdered[T constraints.Ordered](s []T) bool

Returns true iff the elements in [s] are unique and sorted.

func IsSortedBytes added in v1.10.3

func IsSortedBytes[T ~[]byte](s []T) bool

Returns true iff the elements in [s] are sorted.

func RandomBytes added in v1.3.2

func RandomBytes(n int) []byte

RandomBytes returns a slice of n random bytes Intended for use in testing

func Sort added in v1.9.4

func Sort[T Sortable[T]](s []T)

Sorts the elements of [s].

func SortByHash added in v1.9.4

func SortByHash[T ~[]byte](s []T)

Sorts the elements of [s] based on their hashes.

func Zero added in v1.8.0

func Zero[T any]() T

Returns a new instance of a T.

func ZeroSlice added in v1.10.9

func ZeroSlice[T any](s []T)

ZeroSlice sets all values of the provided slice to the type's zero value.

This can be useful to ensure that the garbage collector doesn't hold references to values that are no longer desired.

Types

type Atomic added in v1.9.8

type Atomic[T any] struct {
	// contains filtered or unexported fields
}

func (*Atomic[T]) Get added in v1.9.8

func (a *Atomic[T]) Get() T

func (*Atomic[T]) Set added in v1.9.8

func (a *Atomic[T]) Set(value T)

type Sortable added in v1.9.4

type Sortable[T any] interface {
	Compare(T) int
}

Directories

Path Synopsis
crypto
bls
keychain
Package keychain is a generated GoMock package.
Package keychain is a generated GoMock package.
Package filesystem is a generated GoMock package.
Package filesystem is a generated GoMock package.
Package hashing is a generated GoMock package.
Package hashing is a generated GoMock package.
Package resource is a generated GoMock package.
Package resource is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL