種類
- モジュール関数 (77)
- インスタンスメソッド (53)
- 特異メソッド (31)
- 定数 (11)
- モジュール (8)
クラス
- Exception (14)
-
File
:: Stat (11) - IO (11)
- Object (11)
- Thread (32)
キーワード
- Warning (8)
- chardev? (11)
- fork (22)
- pid (11)
-
report
_ on _ exception (16) -
report
_ on _ exception= (16) - spawn (44)
-
to
_ tty? (7) - warn (27)
検索結果
先頭5件
-
Object
:: STDERR -> IO (26277.0) -
標準エラー出力。$stderr のデフォルト値。 $stderr も参照してください。
...準エラー出力。$stderr のデフォルト値。 $stderr も参照してください。
STDERR は、 ruby プロセスが起動された時点での標準エラー出力を表します。
起動時点では $stderr も同じ値に初期化されています。
$stderr に他の出力オブ......トを代入することで簡易なリダイレクトを実現できます。
そして、 $stderr に STDERR を代入すればこのリダイレクトを復元できるわけです。
=== 注意
STDERR は ruby 自体が起動された時点での標準エラー出力です。
「システムに......ステムでは標準のエラー出力ストリームは端末です。
ruby 自体が他のストリームに向けてエラー出力をリダイレクトされた状態で起動された場合、
STDERR が保持するのは端末ではなく、リダイレクト先のストリームです。... -
Thread
. report _ on _ exception -> bool (14124.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 in......<main>'
1: from -e:1:in `times'
これによってスレッドのエラーを早期に捕捉できるようになります。
いくつかのケースでは、この出力を望まないかもしれません。
出力を抑制するには複数の方法があります:
* 例外が意......了しないようにするのがより良い方法です。
* Thread#join や Thread#value でそのスレッドの終了を待つことが保証できるなら、
スレッド開始時に Thread.current.report_on_exception = false でレポートを無効化しても
安全です。しか......$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 in......<main>'
1: from -e:1:in `times'
これによってスレッドのエラーを早期に捕捉できるようになります。
いくつかのケースでは、この出力を望まないかもしれません。
出力を抑制するには複数の方法があります:
* 例外が意図... -
Thread
. report _ on _ exception=(newstate) (14124.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 in......<main>'
1: from -e:1:in `times'
これによってスレッドのエラーを早期に捕捉できるようになります。
いくつかのケースでは、この出力を望まないかもしれません。
出力を抑制するには複数の方法があります:
* 例外が意......了しないようにするのがより良い方法です。
* Thread#join や Thread#value でそのスレッドの終了を待つことが保証できるなら、
スレッド開始時に Thread.current.report_on_exception = false でレポートを無効化しても
安全です。しか......$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 in......<main>'
1: from -e:1:in `times'
これによってスレッドのエラーを早期に捕捉できるようになります。
いくつかのケースでは、この出力を望まないかもしれません。
出力を抑制するには複数の方法があります:
* 例外が意図... -
Thread
# report _ on _ exception -> bool (14118.0) -
真の場合、そのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
...その内容を $stderr に報告します。
デフォルトはスレッド作成時の Thread.report_on_exception です。
@param newstate スレッド実行中に例外発生した場合、その内容を報告するかどうかを true か false で指定します。
//emlist[例][ruby]{
a =......read.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
# #<Th......read: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) (14118.0) -
真の場合、そのスレッドが例外によって終了した時に、その内容を $stderr に報告します。
...その内容を $stderr に報告します。
デフォルトはスレッド作成時の Thread.report_on_exception です。
@param newstate スレッド実行中に例外発生した場合、その内容を報告するかどうかを true か false で指定します。
//emlist[例][ruby]{
a =......read.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
# #<Th......read: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... -
IO
# pid -> Integer | nil (14114.0) -
自身が IO.popen で作られたIOポートなら、子プロセスのプロセス ID を 返します。それ以外は nil を返します。
... IO.popen で作られたIOポートなら、子プロセスのプロセス ID を
返します。それ以外は nil を返します。
@raise IOError 既に close されている場合に発生します。
//emlist[例][ruby]{
IO.popen("-") do |pipe|
if pipe
$stderr.puts "In parent, child......pid is #{pipe.pid}" # => In parent, child pid is 16013
else
$stderr.puts "In child, pid is #{$$}" # => In child, pid is 16013
end
end
//}... -
Warning (14020.0)
-
警告を出力するためのモジュールです。
...$stderr に出力されます。
Warning.warn をオーバーライドする事で Ruby から出力される警告の動作を変更する事ができます。例えばエラーメッセージのフィルタリングや、$stderr 以外に警告を出力といった変更が可能です。Warning.......warn をオーバーライドする際は super を呼び出すとデフォルトの動作である $stderr への出力ができます。... -
Exception
# full _ message(highlight: true , order: :bottom) -> String (11232.0) -
例外の整形された文字列を返します。
...た例外を標準エラー出力に出力するときと
同じ形式です。
そのため、メソッド呼び出し時に $stderr が変更されておらず、$stderr.tty? が真の場合は
エスケープシーケンスによる文字装飾がついています。
[注意] このメソッド......して実際に、キーワード引数 highlight と order は 2.5.1 で追加されました。
@param highlight エスケープシーケンスによる文字装飾をつけるかどうかを指定します。
デフォルト値は Exception.to_tty? の返り値と同じです。......ト値は Exception.to_tty? が真なら :bottom で偽なら :top です。
//emlist[例][ruby]{
begin
raise "test"
rescue => e
p e.full_message # => "\e[1mTraceback \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......同じ形式です。
そのため、メソッド呼び出し時に $stderr が変更されておらず、$stderr.tty? が真の場合は
エスケープシーケンスによる文字装飾がついています。
@param highlight エスケープシーケンスによる文字装飾をつけるか......は Exception.to_tty? の返り値と同じです。
@param order :top か :bottom で指定する必要があります。
バックトレースの一番奥がエラーメッセージの上(top)か下(bottom)かを指定します。
デフォルト値は Exception.to_tty?......emlist[例][ruby]{
begin
raise "test"
rescue => e
p e.full_message # => "\e[1mTraceback \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 =... -
Warning
. warn(message , category: nil) -> nil (11224.0) -
引数 message を標準エラー出力 $stderr に出力します。
...引数 message を標準エラー出力 $stderr に出力します。
本メソッドはRubyが出力する全ての警告に対して呼び出されます。
そのため本メソッドをオーバーライドすることで Ruby から出力される警告の動作を変更できます。
また......デフォルトの動作である $stderr への出力ができます。
//emlist[][ruby]{
module Warning
# 警告メッセージに category を表示し、message 末尾に !!! を追加する
def self.warn(message, category: nil)
super("#{category} warning : #{message.chomp}!!!\n")
end......ted)
# => deprecated warning : hoge!!!
//}
@param message 出力するオブジェクトを指定します。
@param category 警告のカテゴリを指定します。サポートされている category については Warning.[] を参照してください。
@see Kernel.#warn, Warning#warn... -
Warning
# warn(message , category: nil) -> nil (11218.0) -
引数 message を標準エラー出力 $stderr に出力します。
...引数 message を標準エラー出力 $stderr に出力します。
Kernel.#warnの挙動を変更する際は、このメソッドではなくクラスメソッドであるWarning.warnをオーバーライドする必要があります。
@param message 出力するオブジェクトを指定......します。
@param category 警告のカテゴリを指定します。サポートされている category については Warning.[] を参照してください。
@see Kernel.#warn, Warning.warn... -
Warning
. warn(message) -> nil (11124.0) -
引数 message を標準エラー出力 $stderr に出力します。
...引数 message を標準エラー出力 $stderr に出力します。
本メソッドはRubyが出力する全ての警告に対して呼び出されます。
そのため本メソッドをオーバーライドすることで Ruby から出力される警告の動作を変更できます。
また......イドしたメソッドからは super を呼び出すことで、デフォルトの動作である $stderr への出力ができます。
//emlist[][ruby]{
warn "hoge" # => hoge
module Warning
# 警告メッセージの末尾に !!! を追加する
def self.warn(message)
super(message.ch......")
end
end
warn "hoge" # => hoge!!!
//}
@param message 出力するオブジェクトを指定します。
@param category 警告のカテゴリを指定します。サポートされている category については Warning.[] を参照してください。
@see Kernel.#warn, Warning#warn... -
Warning
# warn(message) -> nil (11118.0) -
引数 message を標準エラー出力 $stderr に出力します。
...引数 message を標準エラー出力 $stderr に出力します。
Kernel.#warnの挙動を変更する際は、このメソッドではなくクラスメソッドであるWarning.warnをオーバーライドする必要があります。
@param message 出力するオブジェクトを指定......します。
@param category 警告のカテゴリを指定します。サポートされている category については Warning.[] を参照してください。
@see Kernel.#warn, Warning.warn... -
Exception
. to _ tty? -> bool (11034.0) -
$stderr が変更されておらず、$stderr.tty? が真の場合は true を返します。
...$stderr が変更されておらず、$stderr.tty? が真の場合は true を返します。
[注意] 2.5.1 で追加されたメソッドです。
@see Exception#full_message......$stderr が変更されておらず、$stderr.tty? が真の場合は true を返します。
@see Exception#full_message... -
File
:: Stat # chardev? -> bool (11008.0) -
キャラクタスペシャルファイルの時に真を返します。
...キャラクタスペシャルファイルの時に真を返します。
//emlist[][ruby]{
Dir.glob("/dev/*") {|bd|
if File::Stat.new(bd).chardev?
puts bd
end
}
#例
#...
#=> /dev/tty1
#=> /dev/stderr
#...
//}...