るりまサーチ

最速Rubyリファレンスマニュアル検索!
904件ヒット [1-100件を表示] (0.111秒)
トップページ > クエリ:a[x] > クエリ:yield[x]

別のキーワード

  1. _builtin to_a
  2. matrix to_a
  3. to_a
  4. dbm to_a
  5. argf.class to_a

検索結果

<< 1 2 3 ... > >>

Enumerator::Yielder#yield(*object) -> () (24119.0)

Enumerator.new で使うメソッドです。

...Enumerator.new で使うメソッドです。

生成された Enumerator オブジェクトの each メソッドを呼ぶと
Enumerator::Yielder オブジェクトが渡されたブロックが実行され、
ブロック内の yield メソッドが呼ばれるたびに each に渡された
ブロ...
...ックが yield メソッドに渡された値とともに繰り返されます。

//emlist[例][ruby]{
enum = Enumerator.new do |y|
y.yield 1, 2, 3
end

enum.each do |x, y, z|
p [x, y, z]
end
# => [1, 2, 3]
//}...

Fiber.yield(*arg = nil) -> object (18231.0)

現在のファイバーの親にコンテキストを切り替えます。

... yield メソッドは返します。

@param arg 現在のファイバーの親に渡したいオブジェクトを指定します。

@raise FiberError Fiber でのルートファイバーで呼ばれた場合に発生します。


//emlist[例:][ruby]{
a
= nil
f = Fiber.new do
a
= Fiber.yield(...
...)
end

f.resume()
f.resume(:foo)

p a #=> :foo
//}...

Proc#yield(*arg) -> () (15201.0)

手続きオブジェクトを実行してその結果を返します。

...て異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p si...
...ような syntactic sugar もあります。

//emlist[例][ruby]{
fib = lambda{|n|
case n
when 0 then 0
when 1 then 1
else
fib.(n - 2) + fib.(n - 1)
end
}
fib.(10) # => 55
//}



@param arg 手続きオブジェクトに与える引数を指定します。

@raise LocalJumpError Proc...

Exception#backtrace_locations -> [Thread::Backtrace::Location] (12406.0)

バックトレース情報を返します。Exception#backtraceに似ていますが、 Thread::Backtrace::Location の配列を返す点が異なります。

...on#backtraceに似ていますが、
Thread::Backtrace::Location の配列を返す点が異なります。

現状では Exception#set_backtrace によって戻り値が変化する事はあり
ません。

//emlist[例: test.rb][ruby]{
require "date"
def check_long_month(month)
return if Date.n...
...w(2000, month, -1).day == 31
raise "#{month} is not long month"
end

def get_exception
return begin
yield

rescue => e
e
end
end

e = get_exception { check_long_month(2) }
p e.backtrace_locations
# => ["test.rb:4:in `check_long_month'", "test.rb:15:in `block in <main>'", "test.rb:9:in...
...`get_exception'", "test.rb:15:in `<main>'"]
//}

@see Exception#backtrace...

static VALUE rb_thread_yield(VALUE arg, rb_thread_t th) (12200.0)

絞り込み条件を変える

Thread#thread_variable_get(key) -> object | nil (9106.0)

引数 key で指定した名前のスレッドローカル変数を返します。

...ad#[] でセットしたローカル変数(Fiber ローカル変数)と
異なり、Fiber を切り替えても同じ変数を返す事に注意してください。

例:

Thread.new {
Thread.current.thread_variable_set("foo", "bar") # スレッドローカル
Thread.current["foo"] = "ba...
...iber.new {
Fiber.yield [
Thread.current.thread_variable_get("foo"), # スレッドローカル
Thread.current["foo"], # Fiber ローカル
]
}.resume
}.join.value # => ['bar', nil]

この例の "bar" は Thread#thread_variable_get により得...
...られ
た値で、nil はThread#[] により得られた値です。

@see Thread#thread_variable_set, Thread#[]

@see https://magazine.rubyist.net/articles/0041/0041-200Special-note.html...

Enumerator::Yielder (9000.0)

Enumerator.new で使われるクラスで、直接使うものではありません。

...Enumerator.new で使われるクラスで、直接使うものではありません。...

VALUE rb_iterate(VALUE (*call_proc)(), VALUE date1, VALUE (*block_proc)(), date2) (6506.0)

ブロック付きメソッド(イテレータ)呼び出しを行う関数です.

...call_proc(data1) を実行します。そしてその関数か
その直下のメソッドで yield が発生すると以下が実行されます。

block_proc(VALUE block_arg, VALUE data2, VALUE self)

block_arg はブロック引数(複数なら配列に入っている)、
data2 は rb_iterat...

VALUE rb_yield(VALUE val) (6416.0)

yield の C 版です.val を引数にブロックを実行します. 複数の引数を与えたいときは配列に格納して渡します。

...
yield
の C 版です.val を引数にブロックを実行します.
複数の引数を与えたいときは配列に格納して渡します。

この関数を呼び出したメソッドがブロックを伴わない場合は,例外
LocalJumpError が発生します....
<< 1 2 3 ... > >>