generatePrimes static method

List<int> generatePrimes(
  1. int length, {
  2. int? primeLimit,
})

Generates a List of prime numbers of length and below primeLimit (if provided).

Implementation

static List<int> generatePrimes(int length, {int? primeLimit}) {
  if (length <= 0) return <int>[];

  if (length == 1) return <int>[2];
  if (length == 2) return <int>[2, 3];

  if (primeLimit == null || primeLimit <= 0) {
    primeLimit = Statistics.maxSafeInt;
  }

  if (primeLimit <= 3) {
    primeLimit = 3;
  }

  var primes = <int>[2, 3];

  for (var n = 5; n < primeLimit && primes.length < length; n += 2) {
    if (n.isPrime) {
      primes.add(n);
    }
  }

  return primes;
}