next method

T next()

Implementation

T next() {
  final random = RandomUtil.randomDouble();
  final index = _cumulativeWeights.indexWhere((w) => w >= random);
  return _weights[index >= 0 ? index : _weights.length - 1].value;
}