makeSampler overloads

Synopses

Declared in <llvm/FuzzMutate/Random.h>

Create an empty reservoir sampler over values of type T.

template<
    typename T,
    typename GenT>
ReservoirSampler<T, GenT>
makeSampler(GenT& RandGen);

Create a reservoir sampler and sample all items in Items with unit weight.

template<
    typename GenT,
    typename RangeT,
    typename ElT = std::remove_reference_t<decltype(*std::begin(std::declval<RangeT>()))>>
ReservoirSampler<ElT, GenT>
makeSampler(
    GenT& RandGen,
    RangeT&& Items);

Create a reservoir sampler and sample a single weighted item.

template<
    typename GenT,
    typename T>
ReservoirSampler<T, GenT>
makeSampler(
    GenT& RandGen,
    T const& Item,
    uint64_t Weight);

Return Value

  • An empty reservoir sampler over values of type T.

  • A reservoir sampler containing a selection from Items.

  • A reservoir sampler that has sampled Item with Weight.

Parameters

Name

Description

RandGen

Pseudo‐random number generator used for sampling.

Items

Range of items to sample with weight one each.

Item

Candidate value to consider for selection.

Weight

Relative weight of this item; zero is ignored.

Created with MrDocs