別のキーワード
ライブラリ
- ビルトイン (466)
-
bigdecimal
/ jacobian (11) -
bigdecimal
/ ludcmp (11) -
bigdecimal
/ newton (11) - coverage (29)
- etc (44)
- gdbm (11)
- getoptlong (33)
- logger (1)
-
minitest
/ spec (2) - mkmf (22)
- openssl (33)
- pp (11)
- rake (33)
-
rake
/ packagetask (11) -
rdoc
/ markup (11) -
rexml
/ document (22) -
rubygems
/ command (11) -
rubygems
/ command _ manager (11) -
rubygems
/ indexer (11) - syslog (165)
- win32ole (66)
クラス
- BasicObject (22)
- Coverage (29)
- Exception (40)
- Fiber (15)
- GDBM (11)
-
Gem
:: Command (11) -
Gem
:: CommandManager (11) -
Gem
:: Indexer (11) - GetoptLong (33)
- Hash (19)
-
Logger
:: Application (1) -
MiniTest
:: Spec (2) - Module (4)
- Object (15)
-
OpenSSL
:: Cipher (11) -
OpenSSL
:: Digest (11) -
OpenSSL
:: SSL :: SSLContext (11) -
RDoc
:: Markup (11) -
REXML
:: Text (11) -
Rake
:: InvocationChain (11) -
Rake
:: PackageTask (11) - Random (7)
- Thread (33)
- TracePoint (150)
- WIN32OLE (33)
-
WIN32OLE
_ EVENT (11) -
WIN32OLE
_ PARAM (11)
モジュール
- Enumerable (11)
- Etc (44)
- Jacobian (11)
- Kernel (156)
- LUSolve (11)
- Newton (11)
-
Rake
:: TaskManager (22) -
RubyVM
:: MJIT (12) - Syslog (165)
キーワード
- == (11)
- Document (11)
- Hash (4)
-
NEWS for Ruby 2
. 3 . 0 (9) -
NEWS for Ruby 3
. 0 . 0 (4) - WIN32OLERuntimeError (11)
- abort (22)
-
add
_ word _ pair (11) - after (1)
- alert (11)
- append (11)
- before (1)
-
bigdecimal
/ newton (11) -
callee
_ id (11) - cause (11)
- chunk (11)
- close (22)
- crit (11)
- debug (11)
- define (11)
- disable (22)
- emerg (11)
- enable (22)
-
enhance
_ with _ matching _ rule (11) - err (11)
- eval (22)
-
eval
_ script (6) - event (11)
- execute (11)
- fail (33)
-
find
_ command (11) - freeze (8)
- group (22)
-
handle
_ interrupt (11) - info (11)
- inspect (11)
-
instance
_ eval (22) -
instruction
_ sequence (6) - jacobian (11)
- lineno (11)
- ludecomp (11)
- mask (11)
- mask= (11)
-
method
_ id (11) -
method
_ missing (11) - new (74)
- nlsolve (11)
- notice (11)
-
ole
_ free (11) -
ole
_ show _ help (11) - open (22)
- open! (11)
- ordering= (11)
- parameters (6)
- paranoid (11)
- passwd (22)
- path (11)
- pause (6)
-
peek
_ result (11) -
pending
_ interrupt? (11) -
pretty
_ print _ inspect (11) - raise (59)
-
raised
_ exception (11) - rehash (11)
-
renegotiation
_ cb= (11) - reopen (11)
- result (11)
- resume (6)
-
return
_ value (11) - start (8)
-
synthesize
_ file _ task (11) - system (24)
- terminate (11)
-
try
_ do (22) - urandom (7)
- warning (11)
- 制御構造 (11)
- 変数と定数 (3)
- 環境変数 (11)
検索結果
先頭5件
-
Kernel
. # abort(message) -> () (18.0) -
Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。
...tart'
begin
puts 'start1...'
abort "error1"
rescue SystemExit => err
puts "end1 with #{err.inspect}"
end
begin
puts 'start2...'
raise RuntimeError.new
rescue
abort
ensure
puts 'end2...'
end
puts 'end' #実行されない
#(標準出力)
#=> start
# start1...
# end1 with #<SystemE......xit: error1>
# start2...
# end2...
#終了ステータス:1
#(標準エラー出力)
#=> error1
# Traceback (most recent call last):
# sample.rb:11:in `<main>': RuntimeError (RuntimeError)
//}
@see Kernel.#exit,Kernel.#exit!... -
Kernel
. # eval(expr) -> object (18.0) -
文字列 expr を Ruby プログラムとして評価してその結果を返しま す。第2引数に Binding オブジェクトを与えた場合、 そのオブジェクトを生成したコンテキストで文字列を評価します。
...= nil
eval('a = RUBY_RELEASE_DATE')
p a #=> "2007-03-13"
eval('def fuga;p 777 end')
fuga #=> 777
eval('raise RuntimeError', binding, 'XXX.rb', 4)
#=> XXX.rb:4: RuntimeError (RuntimeError)
# from ..:9
//}
@see Kernel.#binding,Module#module_eval,BasicObject#instance_eval,Object#method,Object... -
Kernel
. # eval(expr , bind , fname = "(eval)" , lineno = 1) -> object (18.0) -
文字列 expr を Ruby プログラムとして評価してその結果を返しま す。第2引数に Binding オブジェクトを与えた場合、 そのオブジェクトを生成したコンテキストで文字列を評価します。
...= nil
eval('a = RUBY_RELEASE_DATE')
p a #=> "2007-03-13"
eval('def fuga;p 777 end')
fuga #=> 777
eval('raise RuntimeError', binding, 'XXX.rb', 4)
#=> XXX.rb:4: RuntimeError (RuntimeError)
# from ..:9
//}
@see Kernel.#binding,Module#module_eval,BasicObject#instance_eval,Object#method,Object... -
Kernel
. # fail -> () (18.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
...外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or directory - "nonexist" (Err......ensure
p err #=> #<NameError: !!error!!>
end
//}
//emlist[例2][ruby]{
def foo num
print 'in method.'
raise "error!!" if num <= 9
rescue RuntimeError
num += 10
print 'in rescue.'
retry
else
print 'in else.'
ensure
print "in ensure.\n"
end
foo(4) #=> in method.in rescue.in method.i... -
Kernel
. # fail(error _ type , message = nil , backtrace = caller(0) , cause: $ !) -> () (18.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
...外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or directory - "nonexist" (Err......ensure
p err #=> #<NameError: !!error!!>
end
//}
//emlist[例2][ruby]{
def foo num
print 'in method.'
raise "error!!" if num <= 9
rescue RuntimeError
num += 10
print 'in rescue.'
retry
else
print 'in else.'
ensure
print "in ensure.\n"
end
foo(4) #=> in method.in rescue.in method.i... -
Kernel
. # fail(message , cause: $ !) -> () (18.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
...外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or directory - "nonexist" (Err......ensure
p err #=> #<NameError: !!error!!>
end
//}
//emlist[例2][ruby]{
def foo num
print 'in method.'
raise "error!!" if num <= 9
rescue RuntimeError
num += 10
print 'in rescue.'
retry
else
print 'in else.'
ensure
print "in ensure.\n"
end
foo(4) #=> in method.in rescue.in method.i... -
Kernel
. # raise -> () (18.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
...外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or directory - "nonexist" (Err......ensure
p err #=> #<NameError: !!error!!>
end
//}
//emlist[例2][ruby]{
def foo num
print 'in method.'
raise "error!!" if num <= 9
rescue RuntimeError
num += 10
print 'in rescue.'
retry
else
print 'in else.'
ensure
print "in ensure.\n"
end
foo(4) #=> in method.in rescue.in method.i... -
Kernel
. # raise(error _ type , message = nil , backtrace = caller(0) , cause: $ !) -> () (18.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
...外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or directory - "nonexist" (Err......ensure
p err #=> #<NameError: !!error!!>
end
//}
//emlist[例2][ruby]{
def foo num
print 'in method.'
raise "error!!" if num <= 9
rescue RuntimeError
num += 10
print 'in rescue.'
retry
else
print 'in else.'
ensure
print "in ensure.\n"
end
foo(4) #=> in method.in rescue.in method.i... -
Kernel
. # raise(message , cause: $ !) -> () (18.0) -
例外を発生させます。 発生した例外は変数 $! に格納されます。また例外が 発生した時のスタックトレースは変数 $@ に格納され ます。発生した例外は rescue 節で捕捉できます。
...外オブジェクト ($!) を再発生させます。そのような
例外が存在しないが自身は捕捉されている時には例外 RuntimeError を発生させます。
//emlist[例][ruby]{
begin
open("nonexist")
rescue
raise #=> `open': No such file or directory - "nonexist" (Err......ensure
p err #=> #<NameError: !!error!!>
end
//}
//emlist[例2][ruby]{
def foo num
print 'in method.'
raise "error!!" if num <= 9
rescue RuntimeError
num += 10
print 'in rescue.'
retry
else
print 'in else.'
ensure
print "in ensure.\n"
end
foo(4) #=> in method.in rescue.in method.i... -
Object
# freeze -> self (18.0) -
オブジェクトを凍結(内容の変更を禁止)します。
...オブジェクトを凍結(内容の変更を禁止)します。
凍結されたオブジェクトの変更は
例外 RuntimeError を発生させます。
いったん凍結されたオブジェクトを元に戻す方法はありません。
凍結されるのはオブジェクトであり......します。
//emlist[][ruby]{
a1 = "foo".freeze
a1 = "bar"
p a1 #=> "bar"
a2 = "foo".freeze
a2.replace("bar") # can't modify frozen String (RuntimeError)
//}
凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジェクト......ことはできます。
//emlist[][ruby]{
a = [1].freeze
p a.frozen? #=> true
a[0] = "foo"
p a # can't modify frozen Array (RuntimeError)
b = a.dup
p b #=> [1]
p b.frozen? #=> false
b[0] = "foo"
p b #=> ["foo"]
//}
@see Object#frozen?,Object#dup,Kern... -
Thread
. handle _ interrupt(hash) { . . . } -> object (18.0) -
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを 実行します。
...イミングを制御する例
th = Thread.new do
Thread.handle_interrupt(RuntimeError => :never) {
begin
# 安全にリソースの割り当てが可能
Thread.handle_interrupt(RuntimeError => :immediate) {
# ...
}
ensure
# 安全にリ......ソースの解放が可能
end
}
end
Thread.pass
# ...
th.raise "stop"
RuntimeError を無視(延期)している間はリソースの割り当てや ensure
節でリソースの解放を安全に行う事ができます。
==== TimeoutError 対策
例:TimeoutError 発生のタ...