るりまサーチ

最速Rubyリファレンスマニュアル検索!
278件ヒット [1-100件を表示] (0.021秒)

別のキーワード

  1. _builtin step
  2. numeric step
  3. date step
  4. range step
  5. step

ライブラリ

クラス

キーワード

検索結果

<< 1 2 3 > >>

Enumerator::Lazy (18054.0)

map や select などのメソッドの遅延評価版を提供するためのクラス。

...* zip (※互換性のため、ブロックを渡さないケースのみlazy)

Lazy
オブジェクトは、Enumerable#lazyメソッドによって生成されます。

Lazy
から値を取り出すには、Enumerator::Lazy#force または
Enumerable#first を呼びます。

//emlist[例][ruby]{...
...して偶数になるような整数を、小さい方から5個表示する
p 1.step.lazy.select{|n| (n**2).even?}.first(5)
# LTSV (http://ltsv.org/) 形式のログファイルから検索を行う
# Enumerator::Lazy#map は配列ではなく Enumerator を返すため、
# 巨大な配列を確...
...保しようとしてメモリを使い切ったりはしない
open("log.txt"){|f|
f.each_line.lazy.map{|line|
Hash[line.split(/\t/).map{|s| s.split(/:/, 2)}]
}.select{|hash|
hash["req"] =~ /GET/ && hash["status"] == "200"
}.each{|hash|
p hash
}
}
//}...

Enumerator::Lazy#take_while -> Enumerator::Lazy (3166.0)

Enumerable#take_while と同じですが、配列ではなくEnumerator::Lazy を返します。

...なくEnumerator::Lazy を返します。

//emlist[例][ruby]{
1.step.lazy.zip(('a'..'z').cycle).take_while { |e| e.first < 100_000 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:zip(#<Enumerator: "a".."z":cycle>)>:take_while>

1.step.lazy.zip(('a'..'z').c...

Enumerator::Lazy#take_while {|item| ... } -> Enumerator::Lazy (3166.0)

Enumerable#take_while と同じですが、配列ではなくEnumerator::Lazy を返します。

...なくEnumerator::Lazy を返します。

//emlist[例][ruby]{
1.step.lazy.zip(('a'..'z').cycle).take_while { |e| e.first < 100_000 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:zip(#<Enumerator: "a".."z":cycle>)>:take_while>

1.step.lazy.zip(('a'..'z').c...

Enumerator::Lazy#filter {|item| ... } -> Enumerator::Lazy (3161.0)

Enumerable#select と同じですが、配列ではなくEnumerator::Lazy を返します。

...はなくEnumerator::Lazy を返します。

@raise ArgumentError ブロックを指定しなかった場合に発生します。

//emlist[例][ruby]{
1.step.lazy.find_all { |i| i.even? }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:find_all>

1.step.lazy.select { |i| i.even...

Enumerator::Lazy#find_all {|item| ... } -> Enumerator::Lazy (3161.0)

Enumerable#select と同じですが、配列ではなくEnumerator::Lazy を返します。

...はなくEnumerator::Lazy を返します。

@raise ArgumentError ブロックを指定しなかった場合に発生します。

//emlist[例][ruby]{
1.step.lazy.find_all { |i| i.even? }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:find_all>

1.step.lazy.select { |i| i.even...

絞り込み条件を変える

Enumerator::Lazy#select {|item| ... } -> Enumerator::Lazy (3161.0)

Enumerable#select と同じですが、配列ではなくEnumerator::Lazy を返します。

...はなくEnumerator::Lazy を返します。

@raise ArgumentError ブロックを指定しなかった場合に発生します。

//emlist[例][ruby]{
1.step.lazy.find_all { |i| i.even? }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:find_all>

1.step.lazy.select { |i| i.even...

Enumerator::Lazy#collect {|item| ... } -> Enumerator::Lazy (3160.0)

Enumerable#map と同じですが、配列ではなくEnumerator::Lazy を返します。

...ではなくEnumerator::Lazy を返します。

@raise ArgumentError ブロックを指定しなかった場合に発生します。

//emlist[例][ruby]{
1.step.lazy.map{ |n| n % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:map>

1.step.lazy.collect{ |n| n.succ }.ta...

Enumerator::Lazy#find_all {|item| ... } -> Enumerator::Lazy (3160.0)

Enumerable#select と同じですが、配列ではなくEnumerator::Lazy を返します。

...はなくEnumerator::Lazy を返します。

@raise ArgumentError ブロックを指定しなかった場合に発生します。

//emlist[例][ruby]{
1.step.lazy.find_all { |i| i.even? }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:find_all>

1.step.lazy.select { |i| i.even...

Enumerator::Lazy#map {|item| ... } -> Enumerator::Lazy (3160.0)

Enumerable#map と同じですが、配列ではなくEnumerator::Lazy を返します。

...ではなくEnumerator::Lazy を返します。

@raise ArgumentError ブロックを指定しなかった場合に発生します。

//emlist[例][ruby]{
1.step.lazy.map{ |n| n % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:map>

1.step.lazy.collect{ |n| n.succ }.ta...

Enumerator::Lazy#select {|item| ... } -> Enumerator::Lazy (3160.0)

Enumerable#select と同じですが、配列ではなくEnumerator::Lazy を返します。

...はなくEnumerator::Lazy を返します。

@raise ArgumentError ブロックを指定しなかった場合に発生します。

//emlist[例][ruby]{
1.step.lazy.find_all { |i| i.even? }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:find_all>

1.step.lazy.select { |i| i.even...

絞り込み条件を変える

Enumerator::Lazy#drop(n) -> Enumerator::Lazy (3159.0)

Enumerable#drop と同じですが、配列ではなくEnumerator::Lazy を返します。

...Enumerator::Lazy を返します。

@param n 要素数を指定します。

@raise ArgumentError n に負の数を指定した場合に発生します。

//emlist[例][ruby]{
1.step.lazy.drop(3)
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:drop(3)>

1.step.lazy.drop(3).take...

Enumerator::Lazy#drop_while {|item| ... } -> Enumerator::Lazy (3159.0)

Enumerable#drop_while と同じですが、配列ではなくEnumerator::Lazy を返します。

...drop_while と同じですが、配列ではなくEnumerator::Lazy を返します。

//emlist[例][ruby]{
1.step.lazy.drop_while { |i| i < 42 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:drop_while>

1.step.lazy.drop_while { |i| i < 42 }.take(10).force
# => [42, 43, 44, 45...
<< 1 2 3 > >>