Class: Prime::EratosthenesGenerator

Inherits:
PseudoPrimeGenerator show all
Defined in:
lib/prime.rb

Overview

An implementation of PseudoPrimeGenerator.

Uses EratosthenesSieve.

Instance Method Summary collapse

Methods inherited from PseudoPrimeGenerator

#each, #upper_bound, #upper_bound=, #with_object

Constructor Details

#initializeEratosthenesGenerator


308
309
310
311
# File 'lib/prime.rb', line 308

def initialize
  @last_prime_index = -1
  super
end

Instance Method Details

#rewindObject


317
318
319
# File 'lib/prime.rb', line 317

def rewind
  initialize
end

#succObject Also known as: next


313
314
315
316
# File 'lib/prime.rb', line 313

def succ
  @last_prime_index += 1
  EratosthenesSieve.instance.get_nth_prime(@last_prime_index)
end