るりまサーチ

最速Rubyリファレンスマニュアル検索!
97件ヒット [1-97件を表示] (0.021秒)
トップページ > クエリ:Kernel.#throw[x]

別のキーワード

  1. kernel exec
  2. kernel spawn
  3. kernel system
  4. kernel open
  5. kernel gsub

ライブラリ

クラス

モジュール

キーワード

検索結果

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

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

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

throw
は探索時に呼び出しスタックをさかのぼるので、
ジャンプ先は同じメソッド内にあるとは限...
...いる catch が存在しない場合に発生します。

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

ret = catch(:exit) do
begin
foo
some_process() # 絶対に実行されない
10
ensure
puts "ensure"
end
end
puts ret
#=> ensure
# 25
//}

@see Kernel.#catch...
...ェクトです。
@param value catch の戻り値になります。
@raise UncaughtThrowError 同じ tag で待っている catch が存在しない場合に発生します。

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

ret = catch(:exit) do
begin
foo
some_process() # 絶対...
...に実行されない
10
ensure
puts "ensure"
end
end
puts ret
#=> ensure
# 25
//}

@see Kernel.#catch...

Kernel.#catch {|tag| .... } -> object (21102.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
end
end
end
end

p result #=> 1
//}

@see Kernel.#throw...

Kernel.#catch(tag) {|tag| .... } -> object (21102.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
end
end
end
end

p result #=> 1
//}

@see Kernel.#throw...

MiniTest::Assertions#assert_throws(tag, message = nil) { ... } -> true (6202.0)

与えられたブロックを評価中に、与えられたタグが Kernel.#throw された場合、検査にパスしたことになります。

...与えられたブロックを評価中に、与えられたタグが Kernel.#throw された場合、検査にパスしたことになります。

@param tag 与えられたブロック評価中に Kernel.#throw されるタグを任意のオブジェクトとして指定します。

@param mess...
...ージを指定します。
文字列か Proc を指定します。Proc である場合は Proc#call した
結果を使用します。

@raise MiniTest::Assertion 与えられたタグが Kernel.#throw されなかった場合に発生します。

@see Kernel.#throw...

Object#must_throw(tag) -> true (6185.0)

自身を評価中に、与えられたタグが Kernel.#throw された場合、検査にパスしたことになります。

...れたタグが Kernel.#throw された場合、検査にパスしたことになります。

@param tag 自身を評価中に Kernel.#throw されるタグを任意のオブジェクトとして指定します。

@raise MiniTest::Assertion 与えられたタグが Kernel.#throw されなかった...
...場合に発生します。

@see MiniTest::Assertions#assert_throws...

絞り込み条件を変える

UncaughtThrowError (6076.0)

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

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

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

UncaughtThrowError#tag -> object (3054.0)

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

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

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

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

UncaughtThrowError#value -> object (3054.0)

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

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

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

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

Ruby用語集 (54.0)

Ruby用語集 A B C D E F G I J M N O R S Y

...る時点において、そこに至るメソッド呼び出し元情報を遡るデータ。
バックトレースともいう。

Kernel
.#caller_locations、Kernel.#caller で現時点までの
スタックトレースを得ることができる。

また、例外オブジェクトは例...
...脱出
: non-local exit
Ruby においては、例外の発生もしくは Kernel.#throw によって
処理の実行が中断されること。
例外の場合は begin/rescue によって、throw の場合は
Kernel
.#catch によって捕捉されるまで、制御構造やメソッド...
...by、
Enumerable#max_by などのように、要素に対する「評価関数」
としてブロックを要求するメソッドもある。
Kernel
.#open メソッドは、ブロックを与えて呼び出した場合、
ファイルをオープンしてブロックを評価し、ファイ...

NEWS for Ruby 2.2.0 (36.0)

NEWS for Ruby 2.2.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。

...lock をサポートしました。

* Kernel
* 追加: Kernel.#itself(Object#itself)
* 改善: Kernel.#throw は、対応する catch ブロックがないとき ArgumentError ではなく
ArgumentError のサブクラスである UncaughtThrowError を発生させるようになり...
...リの更新 (優れたもののみ)

* continuation
* callcc は廃止されました。Fiberを使ってください。

* digest
* Kernel.#Digest はスレッドセーフになりました。
マルチスレッド環境でオンデマンドローディングに関して問題が...

絞り込み条件を変える

ThreadError (24.0)

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

...いは Thread#run しようとしたとき
* スレッドが一つしかないのに Thread.stop しようとしたとき
* Kernel.#throw がスレッド内で Kernel.#catch されないとき
* スレッドから return しようとしたとき

* イテレータを与えずにスレッド...