44件ヒット
[1-44件を表示]
(0.100秒)
種類
- インスタンスメソッド (22)
- 関数 (11)
- 変数 (11)
ライブラリ
- ビルトイン (33)
クラス
- Exception (22)
モジュール
- Kernel (11)
キーワード
-
$ @ (11) -
backtrace
_ locations (11)
検索結果
先頭4件
-
static void set
_ backtrace(VALUE info , VALUE bt) (38300.0) -
-
Exception
# set _ backtrace(errinfo) -> nil | String | [String] (18207.0) -
バックトレース情報に errinfo を設定し、設定されたバックトレース 情報を返します。
...nfo nil、String あるいは String の配列のいずれかを指定します。
//emlist[例][ruby]{
begin
begin
raise "inner"
rescue
raise "outer"
end
rescue
$!.backtrace # => ["/path/to/test.rb:5:in `rescue in <main>'", "/path/to/test.rb:2:in `<main>'"]
$!.set_backtrace(["dum... -
Exception
# backtrace _ locations -> [Thread :: Backtrace :: Location] (6206.0) -
バックトレース情報を返します。Exception#backtraceに似ていますが、 Thread::Backtrace::Location の配列を返す点が異なります。
...Location の配列を返す点が異なります。
現状では Exception#set_backtrace によって戻り値が変化する事はあり
ません。
//emlist[例: test.rb][ruby]{
require "date"
def check_long_month(month)
return if Date.new(2000, month, -1).day == 31
raise "#{month} is not l......ong 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... -
Kernel
$ $ @ -> [String] | nil (3106.0) -
最後に例外が発生した時のバックトレースを表す配列です。 Kernel.#raise によって設定されます。
...ースを表す配列です。
Kernel.#raise によって設定されます。
配列の各要素はメソッドの呼び出し位置を示す文字列で形式は
"filename:line"
または
"filename:line:in `methodname'"
です。これは Kernel.#caller が返す値と同じ形式です......。
$@ へ値を代入するときは、$! が nil であってはいけません。
$@ の値は、$!.backtrace の値と同じです。
また、$@ への代入は $!.set_backtrace 呼び出しと同じです。
文字列の配列でも nil でもない値を代入しようとすると、 TypeEr...