generator

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jan 10, 2024 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New() *generator

New creates a new generator

Types

type Matcher

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

func (*Matcher) HasParent

func (t *Matcher) HasParent() bool

func (*Matcher) Index added in v0.1.0

func (t *Matcher) Index() int

func (*Matcher) IsAMapElement added in v0.1.0

func (t *Matcher) IsAMapElement() bool

func (*Matcher) IsAMapKey added in v0.1.0

func (t *Matcher) IsAMapKey() bool

func (*Matcher) IsARealPart added in v0.1.0

func (t *Matcher) IsARealPart() bool

func (*Matcher) IsASliceElement added in v0.1.0

func (t *Matcher) IsASliceElement() bool

func (*Matcher) IsAnArrayElement added in v0.1.0

func (t *Matcher) IsAnArrayElement() bool

func (*Matcher) IsAnImaginaryPart added in v0.1.0

func (t *Matcher) IsAnImaginaryPart() bool

func (*Matcher) Length added in v0.1.0

func (t *Matcher) Length() int

func (*Matcher) MapKeyValue added in v0.1.0

func (t *Matcher) MapKeyValue() any

func (*Matcher) MatchesA

func (t *Matcher) MatchesA(a any) bool

func (*Matcher) MatchesAFieldOf

func (t *Matcher) MatchesAFieldOf(a any, names ...string) bool

func (*Matcher) Parent

func (t *Matcher) Parent() *Matcher

func (*Matcher) Type added in v0.1.0

func (t *Matcher) Type() reflect.Type

type Option

type Option func(*generator) (*generator, error)

Option defines an option for customising the generator behaviour

func WithBoolTrueRatio added in v0.1.0

func WithBoolTrueRatio(ratio float64) Option

WithBoolTrueRatio sets the probability of any bool value being true, where 0 means never and 1 means always

func WithBoolTrueRatioFn added in v0.1.0

func WithBoolTrueRatioFn(fn func(t *Matcher) (float64, bool)) Option

WithBoolTrueRatioFn registers a function for setting the chance of a boolean being true

func WithFloat32Fn added in v0.1.0

func WithFloat32Fn(fn func(t *Matcher) (float32, float32, bool)) Option

func WithFloat32Range added in v0.1.0

func WithFloat32Range(min, max float32) Option

func WithFloat64Fn added in v0.1.0

func WithFloat64Fn(fn func(t *Matcher) (float64, float64, bool)) Option

func WithFloat64Range added in v0.1.0

func WithFloat64Range(min, max float64) Option

func WithInt16Fn added in v0.1.0

func WithInt16Fn(fn func(t *Matcher) (int16, int16, bool)) Option

func WithInt16Range added in v0.1.0

func WithInt16Range(min, max int16) Option

func WithInt32Fn added in v0.1.0

func WithInt32Fn(fn func(t *Matcher) (int32, int32, bool)) Option

func WithInt32Range added in v0.1.0

func WithInt32Range(min, max int32) Option

func WithInt64Fn added in v0.1.0

func WithInt64Fn(fn func(t *Matcher) (int64, int64, bool)) Option

func WithInt64Range added in v0.1.0

func WithInt64Range(min, max int64) Option

func WithInt8Fn added in v0.1.0

func WithInt8Fn(fn func(t *Matcher) (int8, int8, bool)) Option

func WithInt8Range added in v0.1.0

func WithInt8Range(min, max int8) Option

func WithIntFn added in v0.1.0

func WithIntFn(fn func(t *Matcher) (int, int, bool)) Option

func WithIntRange added in v0.1.0

func WithIntRange(min, max int) Option

func WithMapLengthFn added in v0.1.0

func WithMapLengthFn(fn func(t *Matcher) (int, int, bool)) Option

func WithMapLengthRange added in v0.1.0

func WithMapLengthRange(min, max int) Option

func WithPointerNilRatio added in v0.1.0

func WithPointerNilRatio(ratio float64) Option

WithPointerNilRatio sets the probability of any pointer value being nil, where 0 means never and 1 means always

func WithPointerNilRatioFn added in v0.1.0

func WithPointerNilRatioFn(fn func(t *Matcher) (float64, bool)) Option

WithPointerNilRatioFn registers a function for setting the chance of a pointer value being nil.

func WithRandomiser added in v0.1.0

func WithRandomiser(rand Randomiser) Option

WithRandomiser replaces the default implementation of the Randomiser interface (pgregory.net/rand) with another.

func WithRunes added in v0.1.0

func WithRunes(runes []rune) Option

WithRunes sets the runes from which strings are constructed

func WithRunesFn added in v0.1.0

func WithRunesFn(fn func(t *Matcher) ([]rune, bool)) Option

WithRunesFn registers a function for setting the runes from which strings are constructed within a matched context

func WithSliceLengthFn added in v0.1.0

func WithSliceLengthFn(fn func(t *Matcher) (int, int, bool)) Option

func WithSliceLengthRange added in v0.1.0

func WithSliceLengthRange(min, max int) Option

func WithStringFn added in v0.1.0

func WithStringFn(fn func(t *Matcher) (string, bool)) Option

func WithStringLengthFn added in v0.1.0

func WithStringLengthFn(fn func(t *Matcher) (int, int, bool)) Option

func WithStringLengthRange added in v0.1.0

func WithStringLengthRange(min, max int) Option

func WithUint16Fn added in v0.1.0

func WithUint16Fn(fn func(t *Matcher) (uint16, uint16, bool)) Option

func WithUint16Range added in v0.1.0

func WithUint16Range(min, max uint16) Option

func WithUint32Fn added in v0.1.0

func WithUint32Fn(fn func(t *Matcher) (uint32, uint32, bool)) Option

func WithUint32Range added in v0.1.0

func WithUint32Range(min, max uint32) Option

func WithUint64Fn added in v0.1.0

func WithUint64Fn(fn func(t *Matcher) (uint64, uint64, bool)) Option

func WithUint64Range added in v0.1.0

func WithUint64Range(min, max uint64) Option

func WithUint8Fn added in v0.1.0

func WithUint8Fn(fn func(t *Matcher) (uint8, uint8, bool)) Option

func WithUint8Range added in v0.1.0

func WithUint8Range(min, max uint8) Option

func WithUintFn added in v0.1.0

func WithUintFn(fn func(t *Matcher) (uint, uint, bool)) Option

func WithUintRange added in v0.1.0

func WithUintRange(min, max uint) Option

type Randomiser added in v0.1.0

type Randomiser interface {
	Uint32() uint32
	Uint32n(uint32) uint32
	Uint64() uint64
	Uint64n(uint64) uint64
	Float32() float32
	Float64() float64
}

Randomiser defines random methods.

Jump to

Keyboard shortcuts

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