Documentation
¶
Index ¶
- Constants
- Variables
- func GenerateS3AvoidCharacters() []rune
- func GenerateS3SafeCharacters() []rune
- func GenerateS3SpecialHandlingCharacters() []rune
- type DepthFirstTreeNodeIterator
- type DepthFirstTreeValueIterator
- type DummyObjectGenerator
- type GeneratedS3Object
- func (r *GeneratedS3Object) ContentReaderIterator() iter.Seq2[uint64, *GeneratedS3ObjectContentReader]
- func (r *GeneratedS3Object) GetContentReader() *GeneratedS3ObjectContentReader
- func (r *GeneratedS3Object) GetFirstVersionContentReader() *GeneratedS3ObjectContentReader
- func (r *GeneratedS3Object) GetFullPath() string
- func (r *GeneratedS3Object) GetLastVersionContentReader() *GeneratedS3ObjectContentReader
- func (r *GeneratedS3Object) GetVersionContentReader(versionIdx uint64) *GeneratedS3ObjectContentReader
- func (r *GeneratedS3Object) GetVersionCount() uint64
- type GeneratedS3ObjectContentReader
- type GeneratorRange
- type ObjectGenerator
- type Queue
- type QueueNode
- type Rnd
- func (r *Rnd) Bool() bool
- func (r *Rnd) Int64() int64
- func (r *Rnd) Int64InRange(min int64, max int64) int64
- func (r *Rnd) IntInRange(min int, max int) int
- func (r *Rnd) Read(p []byte)
- func (r *Rnd) StringFromAlphabet(alphabet string, resultLength int64) string
- func (r *Rnd) StringFromRunes(alphabet []rune, resultLength int64) string
- func (r *Rnd) VarLengthStringFromAlphabet(alphabet string, minLength int64, maxLength int64) string
- func (r *Rnd) VarLengthStringFromRunes(alphabet []rune, minLength int64, maxLength int64) string
- type S3Filler
- type S3ObjectGenerator
- type S3ObjectGeneratorOptions
- func WithContentLengthhRange(min uint32, max uint32) S3ObjectGeneratorOptions
- func WithNameCharacters(chars []rune) S3ObjectGeneratorOptions
- func WithNameLengthRange(min uint32, max uint32) S3ObjectGeneratorOptions
- func WithVersionRange(min uint32, max uint32) S3ObjectGeneratorOptions
- func WithVersioned() S3ObjectGeneratorOptions
- type S3Validator
- type Stack
- type StackNode
- type Tree
- type TreeGenerationTask
- type TreeGenerator
- type TreeGeneratorOption
- func WithDepthRange[T any](min uint32, max uint32) TreeGeneratorOption[T]
- func WithForceTargetDepth[T any]() TreeGeneratorOption[T]
- func WithObjectGenerator[T any](generator ObjectGenerator[T]) TreeGeneratorOption[T]
- func WithRandomSeed[T any](seed int64) TreeGeneratorOption[T]
- func WithRnd[T any](rnd *Rnd) TreeGeneratorOption[T]
- func WithWidthRange[T any](min uint32, max uint32) TreeGeneratorOption[T]
- type TreeGeneratorWithDepthRangeOption
- type TreeGeneratorWithForceTargetDepthOption
- type TreeGeneratorWithObjectGeneratorOption
- type TreeGeneratorWithRandomSeedOption
- type TreeGeneratorWithRndOption
- type TreeGeneratorWithWidthRangeOption
- type TreeNode
- type TreeNodeType
- type TreeRandomElementPicker
- func (r *TreeRandomElementPicker[T]) RandomJointNode() *TreeNode[T]
- func (r *TreeRandomElementPicker[T]) RandomJointSubtree() *Tree[T]
- func (r *TreeRandomElementPicker[T]) RandomJointValue() T
- func (r *TreeRandomElementPicker[T]) RandomLeafNode() *TreeNode[T]
- func (r *TreeRandomElementPicker[T]) RandomLeafValue() T
- func (r *TreeRandomElementPicker[T]) RootNode() *TreeNode[T]
- func (r *TreeRandomElementPicker[T]) RootValue() T
- type WidthFirstTreeNodeIterator
- type WidthFirstTreeValueIterator
Constants ¶
View Source
const ( CTestGenSeed = 811509576612567777 CUseTestGenSeed = false )
Variables ¶
View Source
var (
ErrEmptyIterator = errors.New("iterator is empty")
)
View Source
var (
ErrEmptyQueue = errors.New("queue is empty")
)
View Source
var (
ErrEmptyStack = errors.New("stack is empty")
)
Functions ¶
func GenerateS3AvoidCharacters ¶
func GenerateS3AvoidCharacters() []rune
func GenerateS3SafeCharacters ¶
func GenerateS3SafeCharacters() []rune
func GenerateS3SpecialHandlingCharacters ¶
func GenerateS3SpecialHandlingCharacters() []rune
Types ¶
type DepthFirstTreeNodeIterator ¶
type DepthFirstTreeNodeIterator[T any] struct { // contains filtered or unexported fields }
func (*DepthFirstTreeNodeIterator[T]) HasNext ¶
func (r *DepthFirstTreeNodeIterator[T]) HasNext() bool
func (*DepthFirstTreeNodeIterator[T]) Must ¶
func (r *DepthFirstTreeNodeIterator[T]) Must() iter.Seq[*TreeNode[T]]
func (*DepthFirstTreeNodeIterator[T]) Next ¶
func (r *DepthFirstTreeNodeIterator[T]) Next() (*TreeNode[T], error)
type DepthFirstTreeValueIterator ¶
type DepthFirstTreeValueIterator[T any] struct { DepthFirstTreeNodeIterator[T] }
func (*DepthFirstTreeValueIterator[T]) Must ¶
func (r *DepthFirstTreeValueIterator[T]) Must() iter.Seq[T]
func (*DepthFirstTreeValueIterator[T]) Next ¶
func (r *DepthFirstTreeValueIterator[T]) Next() (T, error)
type DummyObjectGenerator ¶
type DummyObjectGenerator[T any] struct{}
func NewDummyObjectGenerator ¶
func NewDummyObjectGenerator[T any]() *DummyObjectGenerator[T]
func (*DummyObjectGenerator[T]) Generate ¶
func (r *DummyObjectGenerator[T]) Generate(_ *Rnd, _ TreeNodeType, _ T) (T, error)
type GeneratedS3Object ¶
type GeneratedS3Object struct {
// contains filtered or unexported fields
}
func (*GeneratedS3Object) ContentReaderIterator ¶
func (r *GeneratedS3Object) ContentReaderIterator() iter.Seq2[uint64, *GeneratedS3ObjectContentReader]
func (*GeneratedS3Object) GetContentReader ¶
func (r *GeneratedS3Object) GetContentReader() *GeneratedS3ObjectContentReader
func (*GeneratedS3Object) GetFirstVersionContentReader ¶
func (r *GeneratedS3Object) GetFirstVersionContentReader() *GeneratedS3ObjectContentReader
func (*GeneratedS3Object) GetFullPath ¶
func (r *GeneratedS3Object) GetFullPath() string
func (*GeneratedS3Object) GetLastVersionContentReader ¶
func (r *GeneratedS3Object) GetLastVersionContentReader() *GeneratedS3ObjectContentReader
func (*GeneratedS3Object) GetVersionContentReader ¶
func (r *GeneratedS3Object) GetVersionContentReader(versionIdx uint64) *GeneratedS3ObjectContentReader
func (*GeneratedS3Object) GetVersionCount ¶
func (r *GeneratedS3Object) GetVersionCount() uint64
type GeneratedS3ObjectContentReader ¶
type GeneratedS3ObjectContentReader struct {
// contains filtered or unexported fields
}
func NewGeneratedS3ObjectContentReader ¶
func NewGeneratedS3ObjectContentReader(seed int64, contentLengthRange *GeneratorRange) *GeneratedS3ObjectContentReader
func (*GeneratedS3ObjectContentReader) Len ¶
func (r *GeneratedS3ObjectContentReader) Len() uint64
type GeneratorRange ¶
type ObjectGenerator ¶
type ObjectGenerator[T any] interface { Generate(rnd *Rnd, nodeType TreeNodeType, parentData T) (T, error) }
type Rnd ¶
type Rnd struct {
// contains filtered or unexported fields
}
func (*Rnd) StringFromAlphabet ¶
func (*Rnd) StringFromRunes ¶
func (*Rnd) VarLengthStringFromAlphabet ¶
type S3Filler ¶
type S3Filler struct {
// contains filtered or unexported fields
}
func NewS3Filler ¶
func NewS3Filler(tree *Tree[*GeneratedS3Object], client *minio.Client) *S3Filler
func NewS3Validator ¶
func NewS3Validator(tree *Tree[*GeneratedS3Object], client *minio.Client) *S3Filler
type S3ObjectGenerator ¶
type S3ObjectGenerator struct {
// contains filtered or unexported fields
}
func NewS3ObjectGenerator ¶
func NewS3ObjectGenerator(opts ...S3ObjectGeneratorOptions) *S3ObjectGenerator
func (*S3ObjectGenerator) Generate ¶
func (r *S3ObjectGenerator) Generate(rnd *Rnd, nodeType TreeNodeType, parentData *GeneratedS3Object) (*GeneratedS3Object, error)
type S3ObjectGeneratorOptions ¶
type S3ObjectGeneratorOptions func(gen *S3ObjectGenerator)
func WithContentLengthhRange ¶
func WithContentLengthhRange(min uint32, max uint32) S3ObjectGeneratorOptions
func WithNameCharacters ¶
func WithNameCharacters(chars []rune) S3ObjectGeneratorOptions
func WithNameLengthRange ¶
func WithNameLengthRange(min uint32, max uint32) S3ObjectGeneratorOptions
func WithVersionRange ¶
func WithVersionRange(min uint32, max uint32) S3ObjectGeneratorOptions
func WithVersioned ¶
func WithVersioned() S3ObjectGeneratorOptions
type S3Validator ¶
type S3Validator struct {
// contains filtered or unexported fields
}
type Tree ¶
type Tree[T any] struct { // contains filtered or unexported fields }
func (*Tree[T]) DepthFirstNodeIterator ¶
func (r *Tree[T]) DepthFirstNodeIterator() *DepthFirstTreeNodeIterator[T]
func (*Tree[T]) DepthFirstValueIterator ¶
func (r *Tree[T]) DepthFirstValueIterator() *DepthFirstTreeValueIterator[T]
func (*Tree[T]) WidthFirstNodeIterator ¶
func (r *Tree[T]) WidthFirstNodeIterator() *WidthFirstTreeNodeIterator[T]
func (*Tree[T]) WidthFirstValueIterator ¶
func (r *Tree[T]) WidthFirstValueIterator() *WidthFirstTreeValueIterator[T]
type TreeGenerationTask ¶
type TreeGenerationTask[T any] struct { // contains filtered or unexported fields }
type TreeGenerator ¶
type TreeGenerator[T any] struct { // contains filtered or unexported fields }
func NewTreeGenerator ¶
func NewTreeGenerator[T any](opts ...TreeGeneratorOption[T]) (*TreeGenerator[T], error)
func (*TreeGenerator[T]) Generate ¶
func (r *TreeGenerator[T]) Generate() (*Tree[T], error)
type TreeGeneratorOption ¶
type TreeGeneratorOption[T any] interface { // contains filtered or unexported methods }
func WithDepthRange ¶
func WithDepthRange[T any](min uint32, max uint32) TreeGeneratorOption[T]
func WithForceTargetDepth ¶
func WithForceTargetDepth[T any]() TreeGeneratorOption[T]
func WithObjectGenerator ¶
func WithObjectGenerator[T any](generator ObjectGenerator[T]) TreeGeneratorOption[T]
func WithRandomSeed ¶
func WithRandomSeed[T any](seed int64) TreeGeneratorOption[T]
func WithRnd ¶
func WithRnd[T any](rnd *Rnd) TreeGeneratorOption[T]
func WithWidthRange ¶
func WithWidthRange[T any](min uint32, max uint32) TreeGeneratorOption[T]
type TreeGeneratorWithDepthRangeOption ¶
type TreeGeneratorWithDepthRangeOption[T any] struct { // contains filtered or unexported fields }
type TreeGeneratorWithForceTargetDepthOption ¶
type TreeGeneratorWithForceTargetDepthOption[T any] struct{}
type TreeGeneratorWithObjectGeneratorOption ¶
type TreeGeneratorWithObjectGeneratorOption[T any] struct { // contains filtered or unexported fields }
type TreeGeneratorWithRandomSeedOption ¶
type TreeGeneratorWithRandomSeedOption[T any] struct { // contains filtered or unexported fields }
type TreeGeneratorWithRndOption ¶
type TreeGeneratorWithRndOption[T any] struct { // contains filtered or unexported fields }
type TreeGeneratorWithWidthRangeOption ¶
type TreeGeneratorWithWidthRangeOption[T any] struct { // contains filtered or unexported fields }
type TreeNodeType ¶
type TreeNodeType int
const ( CRootTreeNodeType TreeNodeType = iota + 1 CJointTreeNodeType CLeafTreeNodeType )
type TreeRandomElementPicker ¶
type TreeRandomElementPicker[T any] struct { // contains filtered or unexported fields }
func NewTreeRandomElementPicker ¶
func NewTreeRandomElementPicker[T any](tree *Tree[T], rnd *Rnd) *TreeRandomElementPicker[T]
func (*TreeRandomElementPicker[T]) RandomJointNode ¶
func (r *TreeRandomElementPicker[T]) RandomJointNode() *TreeNode[T]
func (*TreeRandomElementPicker[T]) RandomJointSubtree ¶
func (r *TreeRandomElementPicker[T]) RandomJointSubtree() *Tree[T]
func (*TreeRandomElementPicker[T]) RandomJointValue ¶
func (r *TreeRandomElementPicker[T]) RandomJointValue() T
func (*TreeRandomElementPicker[T]) RandomLeafNode ¶
func (r *TreeRandomElementPicker[T]) RandomLeafNode() *TreeNode[T]
func (*TreeRandomElementPicker[T]) RandomLeafValue ¶
func (r *TreeRandomElementPicker[T]) RandomLeafValue() T
func (*TreeRandomElementPicker[T]) RootNode ¶
func (r *TreeRandomElementPicker[T]) RootNode() *TreeNode[T]
func (*TreeRandomElementPicker[T]) RootValue ¶
func (r *TreeRandomElementPicker[T]) RootValue() T
type WidthFirstTreeNodeIterator ¶
type WidthFirstTreeNodeIterator[T any] struct { // contains filtered or unexported fields }
func (*WidthFirstTreeNodeIterator[T]) HasNext ¶
func (r *WidthFirstTreeNodeIterator[T]) HasNext() bool
func (*WidthFirstTreeNodeIterator[T]) Must ¶
func (r *WidthFirstTreeNodeIterator[T]) Must() iter.Seq[*TreeNode[T]]
func (*WidthFirstTreeNodeIterator[T]) Next ¶
func (r *WidthFirstTreeNodeIterator[T]) Next() (*TreeNode[T], error)
type WidthFirstTreeValueIterator ¶
type WidthFirstTreeValueIterator[T any] struct { WidthFirstTreeNodeIterator[T] }
func (*WidthFirstTreeValueIterator[T]) Must ¶
func (r *WidthFirstTreeValueIterator[T]) Must() iter.Seq[T]
func (*WidthFirstTreeValueIterator[T]) Next ¶
func (r *WidthFirstTreeValueIterator[T]) Next() (T, error)
Click to show internal directories.
Click to hide internal directories.