rand

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Sep 18, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Bool

func Bool() bool

func Bytes

func Bytes(n int) []byte

Bytes returns n random bytes generated from math/rand's global default Source.

func Float32

func Float32() float32

func Float64

func Float64() float64

func Int

func Int() int

func Int16

func Int16() int16

func Int31

func Int31() int32

func Int31n

func Int31n(n int32) int32

func Int32

func Int32() int32

func Int63

func Int63() int64

func Int63n

func Int63n(n int64) int64

func Int64

func Int64() int64

func Intn

func Intn(n int) int

func Perm

func Perm(n int) []int

func Seed

func Seed(seed int64)

func Str

func Str(length int) string

Str constructs a random alphanumeric string of given length from math/rand's global default Source.

func StrFromSource

func StrFromSource(r *mrand.Rand, length int) string

StrFromSource produces a random string of a specified length from the specified random source.

func Time

func Time() time.Time

func Uint

func Uint() uint

func Uint16

func Uint16() uint16

func Uint32

func Uint32() uint32

func Uint64

func Uint64() uint64

Types

type Rand

type Rand struct {
	tmsync.Mutex
	// contains filtered or unexported fields
}

Rand is a prng, that is seeded with OS randomness. The OS randomness is obtained from crypto/rand, however none of the provided methods are suitable for cryptographic usage. They all utilize math/rand's prng internally.

All of the methods here are suitable for concurrent use. This is achieved by using a mutex lock on all of the provided methods.

func NewRand

func NewRand() *Rand

func (*Rand) Bool

func (r *Rand) Bool() bool

Bool returns a uniformly random boolean

func (*Rand) Bytes

func (r *Rand) Bytes(n int) []byte

Bytes returns n random bytes generated from the internal prng.

func (*Rand) Float32

func (r *Rand) Float32() float32

func (*Rand) Float64

func (r *Rand) Float64() float64

func (*Rand) Int

func (r *Rand) Int() int

func (*Rand) Int16

func (r *Rand) Int16() int16

func (*Rand) Int31

func (r *Rand) Int31() int32

func (*Rand) Int31n

func (r *Rand) Int31n(n int32) int32

func (*Rand) Int32

func (r *Rand) Int32() int32

func (*Rand) Int63

func (r *Rand) Int63() int64

func (*Rand) Int63n

func (r *Rand) Int63n(n int64) int64

func (*Rand) Int64

func (r *Rand) Int64() int64

func (*Rand) Intn

func (r *Rand) Intn(n int) int

Intn returns, as an int, a uniform pseudo-random number in the range [0, n). It panics if n <= 0.

func (*Rand) Perm

func (r *Rand) Perm(n int) []int

Perm returns a pseudo-random permutation of n integers in [0, n).

func (*Rand) Seed

func (r *Rand) Seed(seed int64)

func (*Rand) Str

func (r *Rand) Str(length int) string

Str constructs a random alphanumeric string of given length.

func (*Rand) Time

func (r *Rand) Time() time.Time

func (*Rand) Uint

func (r *Rand) Uint() uint

func (*Rand) Uint16

func (r *Rand) Uint16() uint16

func (*Rand) Uint32

func (r *Rand) Uint32() uint32

func (*Rand) Uint64

func (r *Rand) Uint64() uint64

Jump to

Keyboard shortcuts

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