るりまサーチ

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

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

クラス

モジュール

キーワード

検索結果

Kernel.#throw(tag, value = nil) -> () (29231.0)

Kernel.#catchとの組み合わせで大域脱出を行います。 throw は同じ tag を指定した catch のブロックの終わりまでジャンプします。

...Kernel.#catchとの組み合わせで大域脱出を行います。 throw
は同じ tag を指定した catch のブロックの終わりまでジャンプします。

throw
は探索時に呼び出しスタックをさかのぼるので、
ジャンプ先は同じメソッド内にあるとは限...
...りません。
もし ensure節 が存在するならジャンプ前に実行します。

同じ tag で待っている catch が存在しない場合は、例外で
スレッドが終了します。

同じ tag であるとは Object#object_id が同じであるという意味です。

@param ta...
...e catch の戻り値になります。
@raise ArgumentError 同じ tag で待っている catch が存在しない場合に発生します。

//emlist[例][ruby]{
def foo
throw
:exit, 25
e
nd

ret = catch(:exit) do
begin
foo
some_process() # 絶対に実行されない
10
e
nsure...
...e catch の戻り値になります。
@raise UncaughtThrowError 同じ tag で待っている catch が存在しない場合に発生します。

//emlist[例][ruby]{
def foo
throw
:exit, 25
e
nd

ret = catch(:exit) do
begin
foo
some_process() # 絶対に実行されない
10
e
...

UncaughtThrowError (20030.0)

Kernel.#throw に指定した tag に対して一致する Kernel.#catch が存在しない場合に発生します。

...Kernel.#throw に指定した tag に対して一致する
Kernel.#catch が存在しない場合に発生します。

throw
"foo", "bar"
# => (例外発生) UncaughtThrowError: uncaught throw "foo"...

UncaughtThrowError#value -> object (17124.0)

Kernel.#throw に指定した value を返します。

...Kernel.#throw に指定した value を返します。

//emlist[例][ruby]{
def do_complicated_things
throw
:uncaught_label, "uncaught_value"
e
nd

begin
do_complicated_things
rescue UncaughtThrowError => ex
p ex.value # => "uncaught_value"
e
nd
//}...

UncaughtThrowError#tag -> object (14124.0)

Kernel.#throw に指定した tag を返します。

...Kernel.#throw に指定した tag を返します。

//emlist[例:][ruby]{
def do_complicated_things
throw
:uncaught_label
e
nd

begin
do_complicated_things
rescue UncaughtThrowError => ex
p ex.tag # => ":uncaught_label"
e
nd
//}...

UncaughtThrowError#to_s -> String (14014.0)

self を tag を含む文字列表現にして返します。

...self を tag を含む文字列表現にして返します。

//emlist[例][ruby]{
def do_complicated_things
throw
:uncaught_label
e
nd

begin
do_complicated_things
rescue UncaughtThrowError => ex
p ex.to_s # => "uncaught throw :uncaught_label"
e
nd
//}...

絞り込み条件を変える

ThreadError (14008.0)

Thread 関連のエラーが起きたときに発生します。

...Thread 関連のエラーが起きたときに発生します。

* カレントスレッドを Thread#join しようとしたとき
* Thread#join でデッドロックしそうになったとき
* 終了したスレッドを Thread#wakeup あるいは Thread#run しようとしたとき
*...
...スレッドが一つしかないのに Thread.stop しようとしたとき
* Kernel.#throw がスレッド内で Kernel.#catch されないとき
* スレッドから return しようとしたとき

* イテレータを与えずにスレッドを生成しようとしたとき
* カレン...
...トスレッドの属するスレッドグループが freeze されているときに、スレッドを生成しようとしたとき

* freeze あるいは enclose されているスレッドグループにスレッドを加えようとした時...

Kernel.#catch {|tag| .... } -> object (11148.0)

Kernel.#throwとの組み合わせで大域脱出を行います。 catch はブロックを実行します。

...Kernel.#throwとの組み合わせで大域脱出を行います。 catch はブロックを実行します。

ブロックの実行中に tag と同一のオブジェクトを引数とする Kernel.#throw が行われた
場合は、その throw の第二引数を戻り値として、ブロック...
...@return ブロックの返り値か、対応するthrowの第二引数を返り値として返します。

//emlist[例][ruby]{
result = catch do |tag|
for i in 1..2
for j in 1..2
for k in 1..2
throw
tag, k
e
nd
e
nd
e
nd
e
nd

p result #=> 1
//}

@see Kernel.#throw...

Kernel.#catch(tag) {|tag| .... } -> object (11148.0)

Kernel.#throwとの組み合わせで大域脱出を行います。 catch はブロックを実行します。

...Kernel.#throwとの組み合わせで大域脱出を行います。 catch はブロックを実行します。

ブロックの実行中に tag と同一のオブジェクトを引数とする Kernel.#throw が行われた
場合は、その throw の第二引数を戻り値として、ブロック...
...@return ブロックの返り値か、対応するthrowの第二引数を返り値として返します。

//emlist[例][ruby]{
result = catch do |tag|
for i in 1..2
for j in 1..2
for k in 1..2
throw
tag, k
e
nd
e
nd
e
nd
e
nd

p result #=> 1
//}

@see Kernel.#throw...