Ruby 2.0.0 リファレンスマニュアル > ライブラリ一覧 > primeライブラリ > Prime::PseudoPrimeGeneratorクラス
クラスの継承リスト: Prime::PseudoPrimeGenerator < Enumerable < Object < Kernel < BasicObject
擬似素数列の列挙子のための抽象クラスです。
Prime の各メソッドが使用する低水準の疑似素数列挙子は、 Prime::PseudoPrimeGenerator のインスタンスであることが期待されています。 このクラスを継承する具象クラスは succ, next, rewind をオーバーライドしなければなりません。
独自の素数列挙アルゴリズムを実装しようとする場合を除いて、ユーザーがこのクラスを利用する必要はありません。高水準の Prime クラスを利用してください。
new(upper_bound = nil) -> Prime::PseudoPrimeGenerator
[permalink][rdoc]自身を初期化します。
each {|prime| ... } -> object
[permalink][rdoc]each -> self
素数を与えられたブロックに渡して評価します。
with_index {|prime, index| ... } -> self
[permalink][rdoc]each_with_index {|prime, index| ... } -> self
with_index -> Enumerator
each_with_index -> Enumerator
与えられたブロックに対して、素数を0起点の連番を渡して評価します。
例:
Prime::EratosthenesGenerator.new(10).each_with_index do |prime, index| p [prime, index] end # [2, 0] # [3, 1] # [5, 2] # [7, 3]
[SEE_ALSO] Enumerator#with_index
next -> ()
[permalink][rdoc]succ -> ()
次の擬似素数を返します。 また内部的な位置を進めます。
サブクラスで実装してください。
rewind -> ()
[permalink][rdoc]列挙状態を巻き戻します。
サブクラスで実装してください。
[SEE_ALSO] Enumerator#rewind
upper_bound -> Integer | nil
[permalink][rdoc]現在の列挙上界を返します。 nil は上界がなく無限に素数を列挙すべきであることを意味します。
upper_bound=(upper_bound)
[permalink][rdoc]新しい列挙上界をセットします。
with_object(obj) {|prime, obj| ... } -> object
[permalink][rdoc]with_object(obj) -> Enumerator
与えられた任意のオブジェクトと要素をブロックに渡して評価します。
[SEE_ALSO] Enumerator#with_object