種類
- モジュール関数 (33)
- 文書 (16)
- インスタンスメソッド (12)
- クラス (10)
ライブラリ
- ビルトイン (53)
-
minitest
/ spec (1) -
minitest
/ unit (1)
クラス
- Object (1)
- UncaughtThrowError (10)
モジュール
- Kernel (33)
-
MiniTest
:: Assertions (1)
キーワード
-
NEWS for Ruby 2
. 0 . 0 (11) -
NEWS for Ruby 2
. 7 . 0 (5) - UncaughtThrowError (10)
-
assert
_ throws (1) - catch (22)
-
must
_ throw (1) - throw (11)
検索結果
先頭5件
-
Kernel
. # catch(tag) {|tag| . . . . } -> object (21261.0) -
Kernel.#throwとの組み合わせで大域脱出を行います。 catch はブロックを実行します。
...
Kernel.#throwとの組み合わせで大域脱出を行います。 catch はブロックを実行します。
ブロックの実行中に tag と同一のオブジェクトを引数とする Kernel.#throw が行われた
場合は、その throw の第二引数を戻り値として、ブロック......ブロックパラメータ tag に
渡されます。
@param tag タグとなる任意のオブジェクトです。
@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
. # throw(tag , value = nil) -> () (21163.0) -
Kernel.#catchとの組み合わせで大域脱出を行います。 throw は同じ tag を指定した catch のブロックの終わりまでジャンプします。
...
Kernel.#catchとの組み合わせで大域脱出を行います。 throw
は同じ tag を指定した catch のブロックの終わりまでジャンプします。
throw は探索時に呼び出しスタックをさかのぼるので、
ジャンプ先は同じメソッド内にあるとは限......らジャンプ前に実行します。
同じ tag で待っている catch が存在しない場合は、例外で
スレッドが終了します。
同じ tag であるとは Object#object_id が同じであるという意味です。
@param tag catch の引数に対応する任意のオブジ......ェクトです。
@param value catch の戻り値になります。
@raise ArgumentError 同じ tag で待っている catch が存在しない場合に発生します。
//emlist[例][ruby]{
def foo
throw :exit, 25
end
ret = catch(:exit) do
begin
foo
some_process() # 絶対に実......ェクトです。
@param value catch の戻り値になります。
@raise UncaughtThrowError 同じ tag で待っている catch が存在しない場合に発生します。
//emlist[例][ruby]{
def foo
throw :exit, 25
end
ret = catch(:exit) do
begin
foo
some_process() # 絶対... -
Kernel
. # catch {|tag| . . . . } -> object (21161.0) -
Kernel.#throwとの組み合わせで大域脱出を行います。 catch はブロックを実行します。
...
Kernel.#throwとの組み合わせで大域脱出を行います。 catch はブロックを実行します。
ブロックの実行中に tag と同一のオブジェクトを引数とする Kernel.#throw が行われた
場合は、その throw の第二引数を戻り値として、ブロック......ブロックパラメータ tag に
渡されます。
@param tag タグとなる任意のオブジェクトです。
@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... -
UncaughtThrowError
# tag -> object (18139.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
//}... -
MiniTest
:: Assertions # assert _ throws(tag , message = nil) { . . . } -> true (141.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 (135.0) -
自身を評価中に、与えられたタグが Kernel.#throw された場合、検査にパスしたことになります。
...えられたタグが Kernel.#throw された場合、検査にパスしたことになります。
@param tag 自身を評価中に Kernel.#throw されるタグを任意のオブジェクトとして指定します。
@raise MiniTest::Assertion 与えられたタグが Kernel.#throw されなか... -
NEWS for Ruby 2
. 0 . 0 (102.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...を導入しました。期待しないスタックオーバーフローを避けるためです
* GC::Profiler
* 追加: GC::Profiler.raw_data GCの加工していないプロファイルデータを返します
* Hash
* 追加: Hash#to_h 明示的に変換するメソッドです。A......ts
* Kernel
* 追加: Kernel.#Hash という変換メソッド。Kernel.#Array, Kernel.#Float に似ています
* 追加: Kernel.#__dir__ 現在のソースファイル(__FILE__)のあるディレクトリ名を正規化された絶対パ スで返します。
* 追加: Kernel.#calle......r_locations フレーム情報の配列を返します
* 拡張: Kernel.#warn Kernel.#puts のように複数の引数を受け付けるようになりました
* 拡張: Kernel.#caller 第2引数で取得するスタックのサイズを指定できるようになりました
* 拡張:... -
NEWS for Ruby 2
. 7 . 0 (60.0) -
NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...ッドの中で、ブロックなしでProc.newやKernel#procを
呼び出すと警告が表示されるようになりました。
//emlist[][ruby]{
def foo
proc
end
foo { puts "Hello" } #=> warning: Capturing the given block using Kernel#proc is deprecated; use `&block` instead
//}
* 非......の中で
「Warning[:deprecated] = false」
としてください。
* ブロック付きで呼び出されたメソッドの中で、Kernel#lambdaをブロックなしで呼び出すと
例外が発生するようになりました。
//emlist[][ruby]{
def bar
lambda
end
bar { pu......更新 (注目すべきもののみ)
* Bundler
* Bundler 2.1.2 に更新されました。
https://github.com/bundler/bundler/releases/tag/v2.1.2
* CGI
* CGI.escapeHTMLが少なくとも1個のエスケープされた文字があるときに2~5倍速くなりました。
ht... -
UncaughtThrowError (48.0)
-
Kernel.#throw に指定した tag に対して一致する Kernel.#catch が存在しない場合に発生します。
...Kernel.#throw に指定した tag に対して一致する
Kernel.#catch が存在しない場合に発生します。
throw "foo", "bar"
# => (例外発生) UncaughtThrowError: uncaught throw "foo"...