utils

package
v1.2.4 Latest Latest
Warning

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

Go to latest
Published: Mar 17, 2021 License: BSD-3-Clause Imports: 11 Imported by: 184

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	MillisecondsBuckets = []float64{
		10,
		100,
		250,
		500,
		1000,
		1500,
		2000,
		3000,
		5000,
		10000,
	}
	NanosecondsBuckets = []float64{
		float64(100 * time.Nanosecond),
		float64(time.Microsecond),
		float64(10 * time.Microsecond),
		float64(100 * time.Microsecond),
		float64(time.Millisecond),
		float64(10 * time.Millisecond),
		float64(100 * time.Millisecond),
		float64(time.Second),
	}
)

Useful latency buckets

View Source
var (
	BytesBuckets = []float64{
		1 << 8,
		1 << 10,
		1 << 12,
		1 << 14,
		1 << 16,
		1 << 18,
		1 << 20,
		1 << 22,
	}
)

Useful bytes buckets

Functions

func ClearSignals added in v0.8.0

func ClearSignals(c chan<- os.Signal)

ClearSignals clears any signals that have been registered on the provided channel and closes the channel.

func CopyBytes added in v0.8.0

func CopyBytes(b []byte) []byte

CopyBytes returns a copy of the provided byte slice. If nil is provided, nil will be returned.

func HandleSignals added in v0.8.0

func HandleSignals(f func(os.Signal), sigs ...os.Signal) chan<- os.Signal

HandleSignals calls f if the go runtime receives the any of the provided signals with the received signal.

If f is nil or there are no provided signals, then nil will be returned. Otherwise, a signal channel will be returned that can be used to clear the signals registered by this function by valling ClearSignals.

func IsSorted2DBytes added in v0.8.0

func IsSorted2DBytes(arr [][]byte) bool

IsSorted2DBytes returns true iff [arr] is sorted

func IsSortedAndUnique

func IsSortedAndUnique(data sort.Interface) bool

IsSortedAndUnique returns true if the elements in the data are unique and sorted.

func IsSortedAndUniqueUint32

func IsSortedAndUniqueUint32(arr []uint32) bool

IsSortedAndUniqueUint32 returns true if the array of uint32s are sorted and unique

func IsSortedAndUniqueUint64 added in v0.8.0

func IsSortedAndUniqueUint64(u64 []uint64) bool

IsSortedAndUniqueUint64 returns true if the array of uint64s are sorted and unique

func Sort2DBytes added in v0.8.0

func Sort2DBytes(arr [][]byte)

Sort2DBytes sorts a 2D byte array Each byte array is not sorted internally; the byte arrays are sorted relative to another.

func SortUint32

func SortUint32(u32 []uint32)

SortUint32 sorts an uint32 array

func SortUint64 added in v0.8.0

func SortUint64(u64 []uint64)

SortUint64 sorts an uint64 array

Types

type AtomicBool added in v1.0.3

type AtomicBool struct {
	// contains filtered or unexported fields
}

func (*AtomicBool) GetValue added in v1.0.3

func (a *AtomicBool) GetValue() bool

func (*AtomicBool) SetValue added in v1.0.3

func (a *AtomicBool) SetValue(b bool)

type AtomicInterface added in v1.0.3

type AtomicInterface struct {
	// contains filtered or unexported fields
}

func NewAtomicInterface added in v1.0.3

func NewAtomicInterface(v interface{}) *AtomicInterface

func (*AtomicInterface) GetValue added in v1.0.3

func (a *AtomicInterface) GetValue() interface{}

func (*AtomicInterface) SetValue added in v1.0.3

func (a *AtomicInterface) SetValue(v interface{})

type DynamicIPDesc added in v1.0.3

type DynamicIPDesc struct {
	*IPDescContainer
}

func NewDynamicIPDesc added in v1.0.3

func NewDynamicIPDesc(ip net.IP, port uint16) DynamicIPDesc

func (*DynamicIPDesc) IP added in v1.0.3

func (i *DynamicIPDesc) IP() IPDesc

func (*DynamicIPDesc) Update added in v1.0.3

func (i *DynamicIPDesc) Update(ip IPDesc)

func (*DynamicIPDesc) UpdateIP added in v1.0.3

func (i *DynamicIPDesc) UpdateIP(ip net.IP)

func (*DynamicIPDesc) UpdatePort added in v1.0.3

func (i *DynamicIPDesc) UpdatePort(port uint16)

type IPDesc

type IPDesc struct {
	IP   net.IP
	Port uint16
}

IPDesc ...

func ToIPDesc

func ToIPDesc(str string) (IPDesc, error)

ToIPDesc ...

func (IPDesc) Equal

func (ipDesc IPDesc) Equal(otherIPDesc IPDesc) bool

Equal ...

func (IPDesc) IsPrivate

func (ipDesc IPDesc) IsPrivate() bool

IsPrivate attempts to decide if the ip address in this descriptor is a local ip address. This function was taken from: https://stackoverflow.com/a/50825191/3478466

func (IPDesc) IsZero

func (ipDesc IPDesc) IsZero() bool

IsZero returns if the IP or port is zeroed out

func (IPDesc) PortString

func (ipDesc IPDesc) PortString() string

PortString ...

func (IPDesc) String

func (ipDesc IPDesc) String() string

type IPDescContainer added in v1.0.3

type IPDescContainer struct {
	*IPDesc
	// contains filtered or unexported fields
}

type Restarter added in v1.0.6

type Restarter interface {
	Restart()
}

Restarter causes the node to shutdown and restart

Jump to

Keyboard shortcuts

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