Class: Prime::PseudoPrimeGenerator
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Subclasses:
|
|
Super Chains via Extension / Inclusion / Inheritance | |
Instance Chain:
self,
Enumerable
|
|
Inherits: | Object |
Defined in: | lib/prime.rb |
Overview
An abstract class for enumerating pseudo-prime numbers.
Concrete subclasses should override succ, next, rewind.
Class Method Summary
- .new(ubound = nil) ⇒ PseudoPrimeGenerator constructor
Instance Attribute Summary
Instance Method Summary
-
#each
Iterates the given block for each prime number.
-
#next
alias of #succ.
-
#rewind
Rewinds the internal position for enumeration.
-
#succ
returns the next pseudo-prime number, and move the internal position forward.
-
#with_index
see
Enumerator
#with_index. -
#with_object(obj)
see
Enumerator
#with_object.
Constructor Details
.new(ubound = nil) ⇒ PseudoPrimeGenerator
# File 'lib/prime.rb', line 243
def initialize(ubound = nil) @ubound = ubound end
Instance Attribute Details
#upper_bound (rw)
[ GitHub ]# File 'lib/prime.rb', line 250
def upper_bound @ubound end
#upper_bound=(ubound) (rw)
[ GitHub ]# File 'lib/prime.rb', line 247
def upper_bound=(ubound) @ubound = ubound end
Instance Method Details
#each
Iterates the given block for each prime number.
#next
alias of #succ.
# File 'lib/prime.rb', line 263
def next raise NotImplementedError, "need to define `next'" end
#rewind
Rewinds the internal position for enumeration.
See Enumerator
#rewind.
# File 'lib/prime.rb', line 270
def rewind raise NotImplementedError, "need to define `rewind'" end
#succ
returns the next pseudo-prime number, and move the internal position forward.
PseudoPrimeGenerator
#succ raises NotImplementedError
.
# File 'lib/prime.rb', line 258
def succ raise NotImplementedError, "need to define `succ'" end
#with_index
see Enumerator
#with_index.
# File 'lib/prime.rb', line 292
alias with_index each_with_index
#with_object(obj)
see Enumerator
#with_object.
# File 'lib/prime.rb', line 295
def with_object(obj) return enum_for(:with_object) unless block_given? each do |prime| yield prime, obj end end