115件ヒット
[1-100件を表示]
(0.234秒)
種類
- インスタンスメソッド (34)
- 変数 (33)
- モジュール関数 (22)
- 特異メソッド (15)
- 定数 (11)
ライブラリ
- ビルトイン (115)
クラス
- Exception (14)
-
File
:: Stat (11) - Object (11)
- Thread (24)
モジュール
- Kernel (55)
キーワード
-
$ -d (11) -
$ DEBUG (11) -
$ stderr (11) - abort (22)
- chardev? (11)
-
report
_ on _ exception (16) -
report
_ on _ exception= (8) -
to
_ tty? (7)
検索結果
先頭5件
-
Object
:: STDERR -> IO (29175.0) -
標準エラー出力。$stderr のデフォルト値。 $stderr も参照してください。
...準エラー出力。$stderr のデフォルト値。 $stderr も参照してください。
STDERR は、 ruby プロセスが起動された時点での標準エラー出力を表します。
起動時点では $stderr も同じ値に初期化されています。
$stderr に他の出力オブ......を代入することで簡易なリダイレクトを実現できます。
そして、 $stderr に STDERR を代入すればこのリダイレクトを復元できるわけです。
=== 注意
STDERR は ruby 自体が起動された時点での標準エラー出力です。
「システムにお......くのシステムでは標準のエラー出力ストリームは端末です。
ruby 自体が他のストリームに向けてエラー出力をリダイレクトされた状態で起動された場合、
STDERR が保持するのは端末ではなく、リダイレクト先のストリームで... -
Kernel
$ $ stderr -> object (14297.0) -
標準エラー出力です。
...標準エラー出力です。
Ruby インタプリタが出力するエラーメッセージや
警告メッセージ、Kernel.#warn の出力先となります。
初期値は Object::STDERR です。
$stderr に代入するオブジェクトには
write という名前のメソッドが定義......リダイレクトしたいときには、
$stderr に代入すれば十分です。
//emlist[例][ruby]{
# 標準エラー出力の出力先を /tmp/foo に変更
$stderr = File.open("/tmp/foo", "w")
puts "foo" # 出力する
$stderr = STDERR # 元に戻す
//}
自プロセスだけで......例][ruby]{
$stderr.reopen("/tmp/foo", "w")
//}
また、リダイレクトしたあと
出力先をまた元に戻したい場合は以下のようにします。
//emlist[例][ruby]{
stderr_old = $stderr.dup # 元の $stderr を保存する
$stderr.reopen("/tmp/foo") # $stderr を /t... -
Kernel
. # abort -> () (14106.0) -
Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。
...Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。
このメソッドと Kernel.#exit との違いは、プログラムの終了ステー
タスが 1 (正確にはCレベルの定数 EXIT_FAILURE の値)固定であることと、......ー出力 $stderr に出力することです。
引数 message を指定すると SystemExit クラスの
Exception#message に message を設定し
て標準エラー出力に出力します。
@param message エラーメッセージ文字列です。
//emlist[][ruby]{
puts 'start'
begin
put......s '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 #<SystemExit: error1>
#......エラーメッセージを標準エラー出力 $stderr に出力することです。
引数 message を指定すると SystemExit クラスの
Exception#message に message を設定し
て標準エラー出力に出力します。
引数を省略した呼び出し時に $! が nil でなけれ......エラーメッセージ文字列です。
//emlist[][ruby]{
puts 'start'
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' #実行され... -
Kernel
. # abort(message) -> () (14106.0) -
Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。
...Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。
このメソッドと Kernel.#exit との違いは、プログラムの終了ステー
タスが 1 (正確にはCレベルの定数 EXIT_FAILURE の値)固定であることと、......ー出力 $stderr に出力することです。
引数 message を指定すると SystemExit クラスの
Exception#message に message を設定し
て標準エラー出力に出力します。
@param message エラーメッセージ文字列です。
//emlist[][ruby]{
puts 'start'
begin
put......s '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 #<SystemExit: error1>
#......エラーメッセージを標準エラー出力 $stderr に出力することです。
引数 message を指定すると SystemExit クラスの
Exception#message に message を設定し
て標準エラー出力に出力します。
引数を省略した呼び出し時に $! が nil でなけれ......エラーメッセージ文字列です。
//emlist[][ruby]{
puts 'start'
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' #実行され... -
Kernel
$ $ DEBUG -> bool (11106.0) -
この値が真のときはインタプリタがデバッグモードになります。
...なります。
Thread.abort_on_exception を
true にセットするのと同じ効果です。
* Thread.abort_on_exception= の効果がなくなります。
* 例外を捕捉しているかどうかに関係なく、
例外が発生した時点で $stderr にそれが出力されます......。
スクリプトの処理は続行されます。
この変数はグローバルスコープです。
@see spec/rubycmd... -
Thread
# report _ on _ exception -> bool (8134.0) -
真の場合、そのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
...内容を $stderr に報告します。
デフォルトはスレッド作成時の Thread.report_on_exception です。
@param newstate スレッド実行中に例外発生した場合、その内容を報告するかどうかを true か false で指定します。
//emlist[例][ruby]{
a = Threa......c7908@(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.run #......=> #<Thread:0x00007fc3f48aefc0@(irb):4 dead>
//}
@see Thread.report_on_exception... -
Exception
. to _ tty? -> bool (8132.0) -
$stderr が変更されておらず、$stderr.tty? が真の場合は true を返します。
...$stderr が変更されておらず、$stderr.tty? が真の場合は true を返します。
[注意] 2.5.1 で追加されたメソッドです。
@see Exception#full_message......$stderr が変更されておらず、$stderr.tty? が真の場合は true を返します。
@see Exception#full_message... -
Exception
# full _ message(highlight: true , order: :bottom) -> String (8130.0) -
例外の整形された文字列を返します。
...列を返します。
返される文字列は Ruby が捕捉されなかった例外を標準エラー出力に出力するときと
同じ形式です。
そのため、メソッド呼び出し時に $stderr が変更されておらず、$stderr.tty? が真の場合は
エスケープシーケン......:bottom で指定する必要があります。
バックトレースの一番奥がエラーメッセージの上(top)か下(bottom)かを指定します。
デフォルト値は Exception.to_tty? が真なら :bottom で偽なら :top です。
//emlist[例][ruby]{
begi......ceback \e[m(most recent call last):\ntest.rb:2:in `<main>': \e[1mtest (\e[4;1mRuntimeError\e[m\e[1m)\n\e[m"
$stderr = $stdout
p e.full_message # => "test.rb:2:in `<main>': test (RuntimeError)\n"
$stderr = STDERR
p e.full_message # => "\e[1mTraceback \e[m(most recent call last):\ntest.rb:... -
Thread
. report _ on _ exception -> bool (8122.0) -
真の時は、いずれかのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
...を $stderr に報告します。
デフォルトは false です。
Thread.new { 1.times { raise } }
は $stderr に以下のように出力します:
#<Thread:...> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
2: from -e:1:in `block......を $stderr に報告します。
デフォルトは true です。
Thread.new { 1.times { raise } }
は $stderr に以下のように出力します:
#<Thread:...> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
2: from -e:1:in `block... -
File
:: Stat # chardev? -> bool (8106.0) -
キャラクタスペシャルファイルの時に真を返します。
...キャラクタスペシャルファイルの時に真を返します。
//emlist[][ruby]{
Dir.glob("/dev/*") {|bd|
if File::Stat.new(bd).chardev?
puts bd
end
}
#例
#...
#=> /dev/tty1
#=> /dev/stderr
#...
//}... -
Kernel
$ $ -d -> bool (8106.0) -
この値が真のときはインタプリタがデバッグモードになります。
...なります。
Thread.abort_on_exception を
true にセットするのと同じ効果です。
* Thread.abort_on_exception= の効果がなくなります。
* 例外を捕捉しているかどうかに関係なく、
例外が発生した時点で $stderr にそれが出力されます......。
スクリプトの処理は続行されます。
この変数はグローバルスコープです。
@see spec/rubycmd...