るりまサーチ

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

別のキーワード

  1. openssl t61string
  2. asn1 t61string
  3. fiddle type_intptr_t
  4. matrix t
  5. t61string new

ライブラリ

クラス

モジュール

検索結果

<< 1 2 > >>

Exception#exception(error_message) -> Exception (36444.0)

引数を指定しない場合は self を返します。引数を指定した場合 自身のコピー を生成し Exception#message 属性を error_message にして返します。

...成し Exception#message 属性を error_message にして返します。

Kernel.#raise は、実質的に、例外オブジェクトの exception
メソッドの呼び出しです。

@
param error_message エラーメッセージを表す文字列を指定します。

//emlist[例][ruby]{
begin...
...# ... # 何か処理
rescue => e
raise e.exception("an error occurs during hogehoge process") # 詳しいエラーメッセージ
end
//}...

Exception#exception -> self (36244.0)

引数を指定しない場合は self を返します。引数を指定した場合 自身のコピー を生成し Exception#message 属性を error_message にして返します。

...成し Exception#message 属性を error_message にして返します。

Kernel.#raise は、実質的に、例外オブジェクトの exception
メソッドの呼び出しです。

@
param error_message エラーメッセージを表す文字列を指定します。

//emlist[例][ruby]{
begin...
...# ... # 何か処理
rescue => e
raise e.exception("an error occurs during hogehoge process") # 詳しいエラーメッセージ
end
//}...

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

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

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

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

//emlist[例: test.rb][ruby]{
require "date"
def check_long_month(month)
return...
...Date.new(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...

Exception#backtrace -> [String] (15219.0)

バックトレース情報を返します。

...line}:in `#{method}'"
(メソッド内の場合)
* "#{sourcefile}:#{sourceline}"
(トップレベルの場合)

という形式の String の配列です。

//emlist[例][ruby]{
def methd
raise
end

begin
methd
rescue => e
p e.backtrace
end

#=> ["filename.rb:2:in `methd'", "filenam...
...e.rb:6"]
//}

@see Exception#backtrace_locations...

Exception#to_json(*args) -> String (15119.0)

自身を JSON 形式の文字列に変換して返します。

...してから JSON::Generator::GeneratorMethods::Hash#to_json を呼び出しています。

@
param args 引数はそのまま JSON::Generator::GeneratorMethods::Hash#to_json に渡されます。

//emlist[例][ruby]{
require "json/add/core"

begin
0/0
rescue => e
e.to_json # => "{\"json_class\...
...":\"ZeroDivisionError\",\"m\":\"divided by 0\",\"b\":[\"/path/to/test.rb:4:in `/'\",\"/path/to/test.rb:4:in `<main>'\"]}"
end
//}

@
see JSON::Generator::GeneratorMethods::Hash#to_json...

絞り込み条件を変える

Exception#set_backtrace(errinfo) -> nil | String | [String] (15113.0)

バックトレース情報に errinfo を設定し、設定されたバックトレース 情報を返します。

...

@
param errinfo 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_ba...
...cktrace(["dummy1", "dummy2"])
$!.backtrace # => ["dummy1", "dummy2"]
end
//}...

TracePoint#raised_exception -> Exception (12421.0)

発生した例外を返します。

...します。

@
raise RuntimeError :raise イベントのためのイベントフックの外側で実行し
た場合に発生します。

//emlist[例][ruby]{
t
race = TracePoint.new(:raise) do |tp|
t
p.raised_exception # => #<ZeroDivisionError: divided by 0>
end
t
race.enable
b...

Thread#report_on_exception -> bool (12269.0)

真の場合、そのスレッドが例外によって終了した時に、その内容を $stderr に報告します。

...$stderr に報告します。

デフォルトはスレッド作成時の Thread.report_on_exception です。

@
param newstate スレッド実行中に例外発生した場合、その内容を報告するかどうかを true か false で指定します。

//emlist[例][ruby]{
a = Thread.new{ Thr...
...ad.stop; raise }
a.report_on_exception = true
a.report_on_exception # => true
a.run
# => #<Thread:0x00007fc3f48c7908@(irb):1 run> terminated with exception (report_on_exception is true):
# Traceback (most recent call last):
# (irb):1:in `block in irb_binding': unhandled exception
# #<Thre...
...ad:0x00007fc3f48c7908@(irb):1 dead>
b = Thread.new{ Thread.stop; raise }
b.report_on_exception = false
b.run # => #<Thread:0x00007fc3f48aefc0@(irb):4 dead>
//}

@
see Thread.report_on_exception...

Thread#report_on_exception=(newstate) (12269.0)

真の場合、そのスレッドが例外によって終了した時に、その内容を $stderr に報告します。

...$stderr に報告します。

デフォルトはスレッド作成時の Thread.report_on_exception です。

@
param newstate スレッド実行中に例外発生した場合、その内容を報告するかどうかを true か false で指定します。

//emlist[例][ruby]{
a = Thread.new{ Thr...
...ad.stop; raise }
a.report_on_exception = true
a.report_on_exception # => true
a.run
# => #<Thread:0x00007fc3f48c7908@(irb):1 run> terminated with exception (report_on_exception is true):
# Traceback (most recent call last):
# (irb):1:in `block in irb_binding': unhandled exception
# #<Thre...
...ad:0x00007fc3f48c7908@(irb):1 dead>
b = Thread.new{ Thread.stop; raise }
b.report_on_exception = false
b.run # => #<Thread:0x00007fc3f48aefc0@(irb):4 dead>
//}

@
see Thread.report_on_exception...
<< 1 2 > >>