Class Prime
In: lib/mathn.rb
Parent: Object

Methods

each   new   next   succ  

Included Modules

Enumerable

Public Class methods

[Source]

    # File lib/mathn.rb, line 72
72:   def initialize
73:     @seed = 1
74:     @primes = []
75:     @counts = []
76:   end

Public Instance methods

[Source]

     # File lib/mathn.rb, line 102
102:   def each
103:     loop do
104:       yield succ
105:     end
106:   end
next()

Alias for succ

[Source]

    # File lib/mathn.rb, line 78
78:   def succ
79:     i = -1
80:     size = @primes.size
81:     while i < size
82:       if i == -1
83:         @seed += 1
84:         i += 1
85:       else
86:         while @seed > @counts[i]
87:           @counts[i] += @primes[i]
88:         end
89:         if @seed != @counts[i]
90:           i += 1
91:         else
92:           i = -1
93:         end
94:       end
95:     end
96:     @primes.push @seed
97:     @counts.push @seed + @seed
98:     return @seed
99:   end

[Validate]