random

package
v0.32.3 Latest Latest
Warning

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

Go to latest
Published: Dec 29, 2025 License: BSD-3-Clause Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrUniqueNumberExhausted = errors.New("all unique numbers in the range have been generated")

Functions

func Int64

func Int64() int64

Int64 returns random int64

func PseudoGenerator added in v0.2.12

func PseudoGenerator(seed int64) (g *rand.Rand)

PseudoGenerator returns *rand.Rand

func PseudoGenerators added in v0.2.3

func PseudoGenerators(seed int64, n int) (g []*rand.Rand)

PseudoGenerators returns list of n *rand.Rand. This is needed in cases where random number generators are used in different goroutines, so that predictability of the generators can be maintained.

Types

type CryptoSource added in v0.12.0

type CryptoSource struct{}

CryptoSource is used to create random source

func (CryptoSource) Int63 added in v0.12.0

func (s CryptoSource) Int63() int64

func (CryptoSource) Seed added in v0.12.0

func (s CryptoSource) Seed(_ int64)

func (CryptoSource) Uint64 added in v0.12.0

func (s CryptoSource) Uint64() (v uint64)

type Generator added in v0.29.0

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

Generator is a random number generator that can optionally enforce uniqueness of generated numbers.

func NewGenerator added in v0.29.0

func NewGenerator(unique bool) *Generator

func (*Generator) GetRandom added in v0.29.0

func (g *Generator) GetRandom(minVal, maxVal int) (int, error)

GetRandom accepts will return positive random int between absolute values of min and max. If the generator is set to unique, it will attempt to return a number that has not been returned before within the given range.

func (*Generator) Reset added in v0.29.0

func (g *Generator) Reset()

Reset clears the history of used numbers for a unique generator. This allows the generator to be reused for a new sequence of unique numbers.

Jump to

Keyboard shortcuts

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