るりまサーチ

最速Rubyリファレンスマニュアル検索!
38件ヒット [1-38件を表示] (0.179秒)
トップページ > クエリ:i[x] > クエリ:l[x] > クエリ:NIL[x] > クエリ:new[x] > クラス:Enumerator[x]

別のキーワード

  1. kernel $-l
  2. matrix l
  3. _builtin $-l
  4. lupdecomposition l
  5. $-l kernel

ライブラリ

キーワード

検索結果

Enumerator.new(size=nil) {|y| ... } -> Enumerator (18459.0)

Enumerator オブジェクトを生成して返します。与えられたブロックは Enumerator::Yielder オブジェクトを 引数として実行されます。

...
Enumerator
オブジェクトを生成して返します。与えられたブロックは Enumerator::Yielder オブジェクトを
引数として実行されます。

生成された Enumerator オブジェクトに対して each を呼ぶと、この生成時に指定されたブロックを...
...実行し、Yielder オブジェクトに対して << メソッドが呼ばれるたびに、
each に渡されたブロックが繰り返されます。

new
に渡されたブロックが終了した時点で each の繰り返しが終わります。
このときのブロックの返り値が each...
...

@param size 生成する Enumerator オブジェクトの要素数を指定します。
I
nteger、Float::INFINITY、Proc オブジェク
ト、nil のいずれかを指定します。Enumerator#size の実
行時に参照されます。

//emlist[例][ruby]{...

Enumerator#size -> Integer | Float::INFINITY | nil (6326.0)

self の要素数を返します。

...self の要素数を返します。

要素数が無限の場合は Float::INFINITY を返します。
Enumerator
.new に Proc オブジェクトを指定していた場合はその
実行結果を返します。呼び出した時に要素数が不明であった場合は nil を返し
ます。

/...
.../emlist[例][ruby]{
(1..100).to_a.permutation(4).size # => 94109400
l
oop.size # => Float::INFINITY
(1..100).drop_while.size # => nil
//}

@see Enumerator.new...

Enumerator.produce(initial = nil) { |prev| ... } -> Enumerator (324.0)

与えられたブロックを呼び出し続ける、停止しない Enumerator を返します。 ブロックの戻り値が、次にブロックを呼び出す時に引数として渡されます。 initial 引数が渡された場合、最初にブロックを呼び出す時にそれがブロック 呼び出しの引数として渡されます。initial が渡されなかった場合は nil が 渡されます。

... Enumerator を返します。
ブロックの戻り値が、次にブロックを呼び出す時に引数として渡されます。
i
nitial 引数が渡された場合、最初にブロックを呼び出す時にそれがブロック
呼び出しの引数として渡されます。initial...
... nil
渡されます。

ブロックが例外 StopIterationを投げた場合、繰り返しが終了します。

@param initial ブロックに最初に渡される値です。任意のオブジェクトを渡せます。

//emlist[例][ruby]{
# 1, 2, 3, 4, ... と続く Enumerator
Enumerator
...
.../emlist[Enumerable のメソッドと組み合わせる例][ruby]{
# 次の火曜日を返す例
require "date"
Enumerator
.produce(Date.today, &:succ).detect(&:tuesday?)

# シンプルなレキサーの例
require "strscan"
scanner = StringScanner.new("7+38/6")
PATTERN = %r{\d+|[-/+*]}
Enumerator
.p...

Enumerator#feed(obj) -> nil (320.0)

Enumerator 内部の yield が返す値を設定します。

...
Enumerator
内部の yield が返す値を設定します。

これで値を設定しなかった場合は yield は nil を返します。

この値は内部で yield された時点でクリアされます。

//emlist[例][ruby]{
# (1), (2), ... (10) の順に実行される
o = Object.new
def...
...o.each
x = yield # (2) blocks
p x # (5) => "foo"
x = yield # (6) blocks
p x # (8) => nil
x = yield # (9) blocks
p x # not reached w/o another e.next
end

e = o.to_enum
e.next # (1)
e.feed "foo" # (3)
e...
....next # (4)
e.next # (7)
# (10)
//}

@param obj Enumerator 内部の yield が返す値
@raise TypeError すでに値をこのメソッドでセットしている場合に発生します...