ライブラリ
- ビルトイン (308)
- bigdecimal (2)
- e2mmap (12)
- rexml (11)
クラス
- BigDecimal (2)
-
Encoding
:: Converter (11) - Exception (44)
- Fiber (15)
- SignalException (33)
- Thread (76)
- TracePoint (22)
モジュール
- Exception2MessageMapper (12)
- Kernel (96)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - == (11)
- Complex (12)
- Fail (6)
- Float (6)
- Integer (6)
-
NEWS for Ruby 2
. 1 . 0 (11) -
NEWS for Ruby 2
. 3 . 0 (9) -
NEWS for Ruby 3
. 0 . 0 (4) - ParseException (11)
- Raise (6)
- Rational (6)
- Ruby用語集 (11)
- TracePoint (11)
-
abort
_ on _ exception (11) -
abort
_ on _ exception= (22) -
backtrace
_ locations (11) - exception (11)
- fail (33)
-
handle
_ interrupt (11) -
last
_ error (11) - logger (11)
- raise (48)
-
raised
_ exception (11) -
report
_ on _ exception (16) -
report
_ on _ exception= (16) -
ruby 1
. 6 feature (11) -
ruby 1
. 8 . 3 feature (11) -
ruby 1
. 8 . 4 feature (11) -
ruby 1
. 9 feature (11) - 制御構造 (11)
検索結果
先頭5件
-
Exception
. new(error _ message = nil) -> Exception (45346.0) -
例外オブジェクトを生成して返します。
...属性 Exception#message の値になり、デフォルトの例外ハンドラで表示されます。
//emlist[例][ruby]{
e = Exception.new("some message")
p e # => #<Exception: some message>
p e.message # => "some message"
//}
//emlist[例][ruby]{
e = Exception.exception("some mes......sage")
p e # => #<Exception: some message>
p e.message # => "some message"
//}... -
Exception
. exception(error _ message = nil) -> Exception (36446.0) -
例外オブジェクトを生成して返します。
...属性 Exception#message の値になり、デフォルトの例外ハンドラで表示されます。
//emlist[例][ruby]{
e = Exception.new("some message")
p e # => #<Exception: some message>
p e.message # => "some message"
//}
//emlist[例][ruby]{
e = Exception.exception("some mes......sage")
p e # => #<Exception: some message>
p e.message # => "some message"
//}... -
Exception
# backtrace _ locations -> [Thread :: Backtrace :: Location] (30252.0) -
バックトレース情報を返します。Exception#backtraceに似ていますが、 Thread::Backtrace::Location の配列を返す点が異なります。
...Exception#backtraceに似ていますが、
Thread::Backtrace::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 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... -
SignalException
. new(sig _ number , sig _ name) -> SignalException (24515.0) -
引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。
...引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。
引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。
@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ......m sig_number シグナル番号を指定します。整数以外のオブジェクトを指
定した場合は to_int メソッドによる暗黙の型変換を試み
ます。
//emlist[例][ruby]{
signal_number = Signal.list["INT"]
se = SignalException.new(signa......l_number) # => #<SignalException: SIGINT>
se.signo # => 2
//}
//emlist[例][ruby]{
se = SignalException.new("INT") # => #<SignalException: SIGINT>
se.signm # => "SIGINT"
//}
@see Signal.#list... -
SignalException
. new(sig _ name) -> SignalException (24415.0) -
引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。
...引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。
引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。
@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ......m sig_number シグナル番号を指定します。整数以外のオブジェクトを指
定した場合は to_int メソッドによる暗黙の型変換を試み
ます。
//emlist[例][ruby]{
signal_number = Signal.list["INT"]
se = SignalException.new(signa......l_number) # => #<SignalException: SIGINT>
se.signo # => 2
//}
//emlist[例][ruby]{
se = SignalException.new("INT") # => #<SignalException: SIGINT>
se.signm # => "SIGINT"
//}
@see Signal.#list... -
SignalException
. new(sig _ number) -> SignalException (24415.0) -
引数で指定したシグナルに関する SignalException オブジェクトを生成して返 します。
...引数で指定したシグナルに関する SignalException オブジェクトを生成して返
します。
引数は Signal.#list に含まれるもののいずれかを指定する必要があり
ます。
@param sig_name シグナル名を Symbol オブジェクト、文字列のいずれ......m sig_number シグナル番号を指定します。整数以外のオブジェクトを指
定した場合は to_int メソッドによる暗黙の型変換を試み
ます。
//emlist[例][ruby]{
signal_number = Signal.list["INT"]
se = SignalException.new(signa......l_number) # => #<SignalException: SIGINT>
se.signo # => 2
//}
//emlist[例][ruby]{
se = SignalException.new("INT") # => #<SignalException: SIGINT>
se.signm # => "SIGINT"
//}
@see Signal.#list... -
Exception
# ==(other) -> bool (24030.0) -
自身と指定された other のクラスが同じであり、 message と backtrace が == メソッドで比較して 等しい場合に true を返します。そうでない場合に false を返します。
...した場合は
Exception#exception を実行して変換を試みます。
//emlist[例][ruby]{
require "date"
def check_long_month(month)
return if 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
results = [2, 2, 4].map { |e | get_exception { check_long_month(e) } }
p results.map { |e| e.class }
# => [RuntimeError, RuntimeError, RuntimeError]
p results.map { |e| e.message }
# => ["2 is not long month", "2 is not long month", "4 is not long month"]
# class, message, backtrace... -
BigDecimal
. new(s , exception: true) -> BigDecimal | nil (21304.0) -
このメソッドは Ruby 2.5 から deprecated です。Kernel.#BigDecimal を使用してください。
...このメソッドは Ruby 2.5 から deprecated です。Kernel.#BigDecimal を使用してください。
新しい BigDecimal オブジェクトを生成します。
詳しくは Kernel.#BigDecimal を参照してください。... -
BigDecimal
. new(s , n , exception: true) -> BigDecimal | nil (21304.0) -
このメソッドは Ruby 2.5 から deprecated です。Kernel.#BigDecimal を使用してください。
...このメソッドは Ruby 2.5 から deprecated です。Kernel.#BigDecimal を使用してください。
新しい BigDecimal オブジェクトを生成します。
詳しくは Kernel.#BigDecimal を参照してください。... -
TracePoint
. new(*events) {|obj| . . . } -> TracePoint (21219.0) -
新しい TracePoint オブジェクトを作成して返します。トレースを有効 にするには TracePoint#enable を実行してください。
...しい TracePoint オブジェクトを作成して返します。トレースを有効
にするには TracePoint#enable を実行してください。
//emlist[例:irb で実行した場合][ruby]{
trace = TracePoint.new(:call) do |tp|
p [tp.lineno, tp.defined_class, tp.method_id, tp.event]
e......nd
# => #<TracePoint:0x007f17372cdb20>
trace.enable
# => false
puts "Hello, TracePoint!"
# ...
# [69, IRB::Notifier::AbstractNotifier, :printf, :call]
# ...
//}
トレースを無効にするには TracePoint#disable を実行してください。
//emlist[][ruby]{
trace.disable
//}
@param even......ad_begin
スレッドの開始。
: :thread_end
スレッドの終了。
指定イベントに関連しない情報を取得するメソッドを実行した場合には
RuntimeError が発生します。
//emlist[例][ruby]{
TracePoint.trace(:line) do |tp|
p tp.raised_exception
end
#......: :fiber_switch
ファイバーの切り替え。
指定イベントに関連しない情報を取得するメソッドを実行した場合には
RuntimeError が発生します。
//emlist[例][ruby]{
TracePoint.trace(:line) do |tp|
p tp.raised_exception
end
# => RuntimeError: 'raised_e......:script_compiled
スクリプトのコンパイル
指定イベントに関連しない情報を取得するメソッドを実行した場合には
RuntimeError が発生します。
//emlist[例][ruby]{
TracePoint.trace(:line) do |tp|
p tp.raised_exception
end
# => RuntimeError: 'raised_e... -
Thread
# report _ on _ exception=(newstate) (12362.0) -
真の場合、そのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
...d.report_on_exception です。
@param newstate スレッド実行中に例外発生した場合、その内容を報告するかどうかを true か false で指定します。
//emlist[例][ruby]{
a = Thread.new{ Thread.stop; raise }
a.report_on_exception = true
a.report_on_exception # => tru......fc3f48c7908@(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
# #<Thread:0x00007fc3f48c7908@(irb):1 dead>
b = Thread.new{ Thread.stop; raise }
b.report_on_exception = false
b.ru......n # => #<Thread:0x00007fc3f48aefc0@(irb):4 dead>
//}
@see Thread.report_on_exception... -
Thread
# abort _ on _ exception=(newstate) (12332.0) -
真の場合、そのスレッドが例外によって終了した時に、インタプリタ 全体を中断させます。false の場合、あるスレッドで起こった例 外は、Thread#join などで検出されない限りそのスレッ ドだけをなにも警告を出さずに終了させます。
...レッドで起こった例
外は、Thread#join などで検出されない限りそのスレッ
ドだけをなにも警告を出さずに終了させます。
デフォルトは偽です。c:Thread#exceptionを参照してください。
@param newstate 自身を実行中に例外発生した......場合、インタプリタ全体を終了させるかどうかを true か false で指定します。
//emlist[例][ruby]{
thread = Thread.new { sleep 1 }
thread.abort_on_exception # => false
thread.abort_on_exception = true
thread.abort_on_exception # => true
//}...