ライブラリ
- ビルトイン (58)
- debug (1)
- etc (130)
-
irb
/ context (2) -
irb
/ ext / tracer (3) -
irb
/ frame (2) - matrix (2)
-
net
/ http (3) - objspace (5)
- optparse (2)
- rake (3)
-
rubygems
/ config _ file (3) - tracer (35)
-
webrick
/ httpresponse (1)
クラス
- Exception (3)
-
Gem
:: ConfigFile (3) -
IRB
:: Context (5) -
IRB
:: Frame (1) - Matrix (2)
-
Net
:: HTTP (1) - Object (1)
-
OptionParser
:: ParseError (2) -
Rake
:: Application (1) -
RubyVM
:: InstructionSequence (7) - Thread (6)
-
Thread
:: Backtrace :: Location (7) - TracePoint (19)
- Tracer (35)
-
WEBrick
:: HTTPResponse (1)
モジュール
- Etc (130)
- Kernel (12)
- ObjectSpace (5)
- Process (1)
- Rake (2)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) -
DEFAULT
_ BACKTRACE (1) -
EVENT
_ SYMBOL (1) - Frame (1)
- HTTPRequest (1)
- Location (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
NEWS for Ruby 2
. 1 . 0 (1) - Ruby用語集 (1)
-
SC
_ 2 _ CHAR _ TERM (1) -
SC
_ 2 _ C _ BIND (1) -
SC
_ 2 _ C _ DEV (1) -
SC
_ 2 _ FORT _ DEV (1) -
SC
_ 2 _ FORT _ RUN (1) -
SC
_ 2 _ LOCALEDEF (1) -
SC
_ 2 _ PBS (1) -
SC
_ 2 _ PBS _ ACCOUNTING (1) -
SC
_ 2 _ PBS _ CHECKPOINT (1) -
SC
_ 2 _ PBS _ LOCATE (1) -
SC
_ 2 _ PBS _ MESSAGE (1) -
SC
_ 2 _ PBS _ TRACK (1) -
SC
_ 2 _ SW _ DEV (1) -
SC
_ 2 _ UPE (1) -
SC
_ 2 _ VERSION (1) -
SC
_ ADVISORY _ INFO (1) -
SC
_ AIO _ LISTIO _ MAX (1) -
SC
_ AIO _ MAX (1) -
SC
_ AIO _ PRIO _ DELTA _ MAX (1) -
SC
_ ARG _ MAX (1) -
SC
_ ASYNCHRONOUS _ IO (1) -
SC
_ ATEXIT _ MAX (1) -
SC
_ AVPHYS _ PAGES (1) -
SC
_ BARRIERS (1) -
SC
_ BC _ BASE _ MAX (1) -
SC
_ BC _ DIM _ MAX (1) -
SC
_ BC _ SCALE _ MAX (1) -
SC
_ BC _ STRING _ MAX (1) -
SC
_ CHILD _ MAX (1) -
SC
_ CLK _ TCK (1) -
SC
_ CLOCK _ SELECTION (1) -
SC
_ COLL _ WEIGHTS _ MAX (1) -
SC
_ CPUSET _ SIZE (1) -
SC
_ CPUTIME (1) -
SC
_ DELAYTIMER _ MAX (1) -
SC
_ EXPR _ NEST _ MAX (1) -
SC
_ FSYNC (1) -
SC
_ GETGR _ R _ SIZE _ MAX (1) -
SC
_ GETPW _ R _ SIZE _ MAX (1) -
SC
_ HOST _ NAME _ MAX (1) -
SC
_ IOV _ MAX (1) -
SC
_ IPV6 (1) -
SC
_ JOB _ CONTROL (1) -
SC
_ LINE _ MAX (1) -
SC
_ LOGIN _ NAME _ MAX (1) -
SC
_ MAPPED _ FILES (1) -
SC
_ MEMLOCK (1) -
SC
_ MEMLOCK _ RANGE (1) -
SC
_ MEMORY _ PROTECTION (1) -
SC
_ MESSAGE _ PASSING (1) -
SC
_ MONOTONIC _ CLOCK (1) -
SC
_ MQ _ OPEN _ MAX (1) -
SC
_ MQ _ PRIO _ MAX (1) -
SC
_ NGROUPS _ MAX (1) -
SC
_ NPROCESSORS _ CONF (1) -
SC
_ NPROCESSORS _ ONLN (1) -
SC
_ OPEN _ MAX (1) -
SC
_ PAGESIZE (1) -
SC
_ PAGE _ SIZE (1) -
SC
_ PHYS _ PAGES (1) -
SC
_ PRIORITIZED _ IO (1) -
SC
_ PRIORITY _ SCHEDULING (1) -
SC
_ RAW _ SOCKETS (1) -
SC
_ READER _ WRITER _ LOCKS (1) -
SC
_ REALTIME _ SIGNALS (1) -
SC
_ REGEXP (1) -
SC
_ RE _ DUP _ MAX (1) -
SC
_ RTSIG _ MAX (1) -
SC
_ SAVED _ IDS (1) -
SC
_ SEMAPHORES (1) -
SC
_ SEM _ NSEMS _ MAX (1) -
SC
_ SEM _ VALUE _ MAX (1) -
SC
_ SHARED _ MEMORY _ OBJECTS (1) -
SC
_ SHELL (1) -
SC
_ SIGQUEUE _ MAX (1) -
SC
_ SPAWN (1) -
SC
_ SPIN _ LOCKS (1) -
SC
_ SPORADIC _ SERVER (1) -
SC
_ SS _ REPL _ MAX (1) -
SC
_ STREAM _ MAX (1) -
SC
_ SYMLOOP _ MAX (1) -
SC
_ SYNCHRONIZED _ IO (1) -
SC
_ THREADS (1) -
SC
_ THREAD _ ATTR _ STACKADDR (1) -
SC
_ THREAD _ ATTR _ STACKSIZE (1) -
SC
_ THREAD _ CPUTIME (1) -
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (1) -
SC
_ THREAD _ KEYS _ MAX (1) -
SC
_ THREAD _ PRIORITY _ SCHEDULING (1) -
SC
_ THREAD _ PRIO _ INHERIT (1) -
SC
_ THREAD _ PRIO _ PROTECT (1) -
SC
_ THREAD _ PROCESS _ SHARED (1) -
SC
_ THREAD _ ROBUST _ PRIO _ INHERIT (1) -
SC
_ THREAD _ ROBUST _ PRIO _ PROTECT (1) -
SC
_ THREAD _ SAFE _ FUNCTIONS (1) -
SC
_ THREAD _ SPORADIC _ SERVER (1) -
SC
_ THREAD _ STACK _ MIN (1) -
SC
_ THREAD _ THREADS _ MAX (1) -
SC
_ TIMEOUTS (1) -
SC
_ TIMERS (1) -
SC
_ TIMER _ MAX (1) -
SC
_ TRACE (1) -
SC
_ TRACE _ EVENT _ FILTER (1) -
SC
_ TRACE _ EVENT _ NAME _ MAX (1) -
SC
_ TRACE _ INHERIT (1) -
SC
_ TRACE _ LOG (1) -
SC
_ TRACE _ NAME _ MAX (1) -
SC
_ TRACE _ SYS _ MAX (1) -
SC
_ TRACE _ USER _ EVENT _ MAX (1) -
SC
_ TTY _ NAME _ MAX (1) -
SC
_ TYPED _ MEMORY _ OBJECTS (1) -
SC
_ TZNAME _ MAX (1) -
SC
_ V6 _ ILP32 _ OFF32 (1) -
SC
_ V6 _ ILP32 _ OFFBIG (1) -
SC
_ V6 _ LP64 _ OFF64 (1) -
SC
_ V6 _ LPBIG _ OFFBIG (1) -
SC
_ V7 _ ILP32 _ OFF32 (1) -
SC
_ V7 _ ILP32 _ OFFBIG (1) -
SC
_ V7 _ LP64 _ OFF64 (1) -
SC
_ V7 _ LPBIG _ OFFBIG (1) -
SC
_ VERSION (1) -
SC
_ XOPEN _ CRYPT (1) -
SC
_ XOPEN _ ENH _ I18N (1) -
SC
_ XOPEN _ REALTIME (1) -
SC
_ XOPEN _ REALTIME _ THREADS (1) -
SC
_ XOPEN _ SHM (1) -
SC
_ XOPEN _ STREAMS (1) -
SC
_ XOPEN _ UNIX (1) -
SC
_ XOPEN _ UUCP (1) -
SC
_ XOPEN _ VERSION (1) - Single (1)
- Trace (1)
- TracePoint (1)
- Tracer (1)
- WUNTRACED (1)
-
absolute
_ path (1) -
add
_ filter (3) -
add
_ trace _ func (1) -
allocation
_ sourcefile (1) -
allocation
_ sourceline (1) - application (1)
- application= (1)
-
back
_ trace _ limit (1) -
back
_ trace _ limit= (1) - backtrace (4)
- backtrace= (1)
-
backtrace
_ locations (3) -
base
_ label (1) - binding (1)
-
call
_ trace _ func (1) -
callee
_ id (1) - caller (3)
-
caller
_ locations (2) -
compile
_ option (1) -
compile
_ option= (1) - debug (1)
-
defined
_ class (1) - disable (2)
- disasm (2)
- disassemble (2)
-
display
_ c _ call (1) -
display
_ c _ call= (1) -
display
_ c _ call? (1) -
display
_ process _ id (1) -
display
_ process _ id= (1) -
display
_ process _ id? (1) -
display
_ thread _ id (1) -
display
_ thread _ id= (1) -
display
_ thread _ id? (1) - enable (2)
- enabled? (1)
- event (1)
- fail (1)
-
filter
_ backtrace (1) - freeze (1)
-
get
_ backtrace (1) -
get
_ line (1) -
get
_ thread _ no (1) - inspect (2)
- irb (1)
-
irb
/ ext / tracer (1) - label (1)
- lineno (2)
-
make
_ backtrace (1) -
method
_ id (1) - new (2)
- off (2)
- on (4)
- path (2)
- raise (2)
-
raised
_ exception (1) - rake (1)
-
rb
_ backtrace (1) -
rb
_ f _ trace _ var (1) -
rb
_ f _ untrace _ var (1) -
rb
_ trace _ eval (1) -
remove
_ trace (1) -
return
_ value (1) -
ruby 1
. 8 . 4 feature (1) -
ruby 1
. 9 feature (1) - self (1)
-
set
_ backtrace (3) -
set
_ error (1) -
set
_ get _ line _ procs (3) -
set
_ trace _ func (3) - stat (1)
- stdout (2)
- stdout= (1)
-
stdout
_ mutex (1) -
to
_ a (1) -
to
_ s (1) - tr (1)
-
trace
_ en (1) -
trace
_ ev (1) -
trace
_ func (3) -
trace
_ object _ allocations (1) -
trace
_ object _ allocations _ start (1) -
trace
_ object _ allocations _ stop (1) -
trace
_ var (3) - tracer (1)
-
untrace
_ var (1) -
use
_ tracer (1) -
use
_ tracer= (1) -
use
_ tracer? (1) - verbose (1)
- verbose= (1)
- verbose? (1)
- セキュリティモデル (1)
検索結果
先頭5件
-
static VALUE trace
_ ev(struct trace _ data *data) (78601.0) -
-
static VALUE trace
_ en(struct global _ variable *var) (78301.0) -
-
tracer (78019.0)
-
実行トレース出力をとる機能を提供します。
実行トレース出力をとる機能を提供します。
使い方は大きく分けて2通り。
ひとつは以下のようにコマンドラインから Kernel.#require する方法です。
hoge.rb の実行をすべてトレース出力します。
ruby -rtracer hoge.rb
もうひとつはソースからrequireする方法です。
require 'tracer'
とした後
Tracer.on
によりトレース出力を有効にします。
Tracer.off
によりトレース出力を無効にします。
また、ブロック付きで Tracer.on を呼び出すと、そのブロック内のみ
トレースを出力します... -
TracePoint
. trace(*events) {|obj| . . . } -> TracePoint (63658.0) -
新しい TracePoint オブジェクトを作成して自動的にトレースを開始し ます。TracePoint.new のコンビニエンスメソッドです。
新しい TracePoint オブジェクトを作成して自動的にトレースを開始し
ます。TracePoint.new のコンビニエンスメソッドです。
@param events トレースするイベントを String か Symbol で任
意の数指定します。指定できる値については
TracePoint.new を参照してください。
//emlist[例][ruby]{
trace = TracePoint.trace(:call) { |tp| [tp.lineno, tp.event] }
# => #<TracePoint:0x00... -
Net
:: HTTP # trace(path , initheader = nil) -> Net :: HTTPResponse (54370.0) -
サーバの path に TRACE リクエストを ヘッダを initheader として送ります。
サーバの path に TRACE リクエストを
ヘッダを initheader として送ります。
レスポンスを Net::HTTPResponse のオブジェクト
で返します。
@param path リクエストを送るパスを文字列で与えます。
@param initheader リクエストのヘッダを「文字列=>文字列」の
ハッシュで与えます。
@see Net::HTTP::Trace -
Matrix
# trace -> Integer | Float | Rational | Complex (45406.0) -
トレース (trace) を返します。
トレース (trace) を返します。
行列のトレース (trace) とは、対角要素の和です。
//emlist[例][ruby]{
require 'matrix'
Matrix[[7,6], [3,9]].trace # => 16
//}
trace は正方行列でのみ定義されます。
@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します -
Tracer
# trace _ func(event , file , line , id , binding , klass , *) -> object | nil (27304.0) -
@todo
@todo -
Tracer
. trace _ func(*vars) -> object | nil (27304.0) -
debug ライブラリの内部で使用します。
debug ライブラリの内部で使用します。 -
static VALUE set
_ trace _ func(VALUE obj , VALUE trace) (18649.0) -
Kernel#set_trace_func の実体。 評価器に対するフック手続きを登録します。
Kernel#set_trace_func の実体。
評価器に対するフック手続きを登録します。 -
Exception
# backtrace _ locations -> [Thread :: Backtrace :: Location] (18601.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
... -
Gem
:: ConfigFile # backtrace=(backtrace) (18601.0) -
エラー発生時にバックトレースを出力するかどうか設定します。
エラー発生時にバックトレースを出力するかどうか設定します。
@param backtrace 真を指定するとエラー発生時にバックトレースを出力するようになります。 -
Thread
# backtrace _ locations(range) -> [Thread :: Backtrace :: Location] | nil (18601.0) -
スレッドの現在のバックトレースを Thread::Backtrace::Location の配 列で返します。
スレッドの現在のバックトレースを Thread::Backtrace::Location の配
列で返します。
引数で指定した値が範囲外の場合、スレッドがすでに終了している場合は nil
を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
Kernel.#caller_locations と似ていますが、本メソッドは self に限定
した情報を返します。
//emlist[例][ruby]... -
Thread
# backtrace _ locations(start = 0 , length = nil) -> [Thread :: Backtrace :: Location] | nil (18601.0) -
スレッドの現在のバックトレースを Thread::Backtrace::Location の配 列で返します。
スレッドの現在のバックトレースを Thread::Backtrace::Location の配
列で返します。
引数で指定した値が範囲外の場合、スレッドがすでに終了している場合は nil
を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
Kernel.#caller_locations と似ていますが、本メソッドは self に限定
した情報を返します。
//emlist[例][ruby]... -
Thread
# set _ trace _ func(pr) -> Proc | nil (18412.0) -
スレッドにトレース用ハンドラを設定します。
スレッドにトレース用ハンドラを設定します。
nil を渡すとトレースを解除します。
設定したハンドラを返します。
//emlist[例][ruby]{
th = Thread.new do
class Trace
end
2.to_s
Thread.current.set_trace_func nil
3.to_s
end
th.set_trace_func lambda {|*arg| p arg }
th.join
# => ["line", "example.rb", 2, nil, #<Binding:0x00007fc8de87cb08>, nil]
#... -
Thread
# add _ trace _ func(pr) -> Proc (18376.0) -
スレッドにトレース用ハンドラを追加します。
スレッドにトレース用ハンドラを追加します。
追加したハンドラを返します。
@param pr トレースハンドラ(Proc オブジェクト)
//emlist[例][ruby]{
th = Thread.new do
class Trace
end
43.to_s
end
th.add_trace_func lambda {|*arg| p arg }
th.join
# => ["line", "example.rb", 4, nil, #<Binding:0x00007f98e107d0d8>, nil]
# => ["c-call", "example.rb", 4, ... -
Kernel
. # untrace _ var(varname , hook = nil) -> [String|Proc] (18373.0) -
グローバル変数 varname に関連付けられたフックを解除します。
グローバル変数 varname に関連付けられたフックを解除します。
hook が指定された場合にはそのフックだけを解除します。
省略するか nil を与えた場合は
varname のフックを全て解除します。
@param varname グローバル変数名を文字列か Symbol で指定します。
@param hook 文字列または Proc オブジェクトです。
@return 解除されたフックの配列を返します。
//emlist[例][ruby]{
trace_var(:$v){|val| print "hookA.#{val.inspect},\n" }
block = proc{... -
Process
:: WUNTRACED -> Integer (18349.0) -
Process.#waitpid の第二引数に指定するフラグです。 このフラグが指定された場合、waitpid は停止しているだけで 終了していない子プロセスのプロセス ID も返すようになります。 trace されている子プロセスの ID は返しません。
Process.#waitpid の第二引数に指定するフラグです。
このフラグが指定された場合、waitpid は停止しているだけで
終了していない子プロセスのプロセス ID も返すようになります。
trace されている子プロセスの ID は返しません。
include Process
pid = fork{ Process.kill('SIGSTOP', Process.pid) }
p pid #=> 4336
p waitpid2(pid, WUNTRACED) #=> [4336, #<Process::Statu... -
static void call
_ trace _ func(char *event , NODE *pos , VALUE self , ID id , VALUE klass) (18349.0) -
評価器の動作をフックする手続き trace_func を評価します。
評価器の動作をフックする手続き trace_func を評価します。 -
Kernel
. # trace _ var(varname) {|new _ val| . . . . } -> nil (18346.0) -
グローバル変数 varname への代入のフックを登録します。
グローバル変数 varname への代入のフックを登録します。
ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に n... -
Kernel
. # trace _ var(varname , hook) -> [String|Proc] (18346.0) -
グローバル変数 varname への代入のフックを登録します。
グローバル変数 varname への代入のフックを登録します。
ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に n... -
Kernel
. # trace _ var(varname , hook) -> nil (18346.0) -
グローバル変数 varname への代入のフックを登録します。
グローバル変数 varname への代入のフックを登録します。
ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に n... -
IRB
:: Context # back _ trace _ limit=(val) (18340.0) -
エラー発生時のバックトレース表示の先頭、末尾の上限の行数をそれぞれ val 行に設定します。
エラー発生時のバックトレース表示の先頭、末尾の上限の行数をそれぞれ val
行に設定します。
.irbrc ファイル中で IRB.conf[:BACK_TRACE_LIMIT] を設定する事でも同様の
操作が行えます。
@param val バックトレース表示の先頭、末尾の上限を Integer で指定
します。
@see IRB::Context#back_trace_limit -
Kernel
. # set _ trace _ func(proc) -> Proc (18340.0) -
Ruby インタプリタのイベントをトレースする Proc オブジェクトとして 指定された proc を登録します。 nil を指定するとトレースがオフになります。
Ruby インタプリタのイベントをトレースする Proc オブジェクトとして
指定された proc を登録します。 nil を指定するとトレースがオフになります。
Ruby インタプリタがプログラムを実行する過程で、メソッドの呼び出しや
式の評価などのイベントが発生する度に、以下で説明する6個の引数とともに
登録された Proc オブジェクトを実行します。
標準添付の debug、tracer、
profile はこの組み込み関数を利用して実現されています。
=== ブロックパラメータの意味
渡す Proc オブジェクトのパラメータは
//emlist[][ruby]{
proc{|... -
ObjectSpace
. # trace _ object _ allocations _ stop -> nil (18340.0) -
オブジェクト割り当てのトレースを終了します。
オブジェクト割り当てのトレースを終了します。
トレースを終了する為には、ObjectSpace.#trace_object_allocations_startを呼んだ回数分だけこのメソッドを呼ぶ必要があります。
@see ObjectSpace.#trace_object_allocations_start -
IRB
:: Context # back _ trace _ limit -> Integer (18322.0) -
エラー発生時のバックトレース表示の先頭、末尾の上限の行数を返します。
エラー発生時のバックトレース表示の先頭、末尾の上限の行数を返します。
デフォルト値は 16 です。
@see IRB::Context#back_trace_limit= -
ObjectSpace
. # trace _ object _ allocations { . . . } (18322.0) -
与えられたブロック内でオブジェクトのトレースを行います。
与えられたブロック内でオブジェクトのトレースを行います。
//emlist[例][ruby]{
require 'objspace'
class C
include ObjectSpace
def foo
trace_object_allocations do
obj = Object.new
p "#{allocation_sourcefile(obj)}:#{allocation_sourceline(obj)}"
end
end
end
C.new.foo #=> "objtrace.rb:8"
//} -
ObjectSpace
. # trace _ object _ allocations _ start -> nil (18322.0) -
オブジェクト割り当てのトレースを開始します。
オブジェクト割り当てのトレースを開始します。
@see ObjectSpace.#trace_object_allocations_stop -
IRB
:: Frame # trace _ func(event , file , line , id , binding) -> Binding (18304.0) -
ライブラリ内部で使用します。
ライブラリ内部で使用します。 -
Exception
# backtrace -> [String] (18301.0) -
バックトレース情報を返します。
バックトレース情報を返します。
デフォルトでは
* "#{sourcefile}:#{sourceline}:in `#{method}'"
(メソッド内の場合)
* "#{sourcefile}:#{sourceline}"
(トップレベルの場合)
という形式の String の配列です。
//emlist[例][ruby]{
def methd
raise
end
begin
methd
rescue => e
p e.backtrace
end
#=> ["filename.rb:2:in `methd'", "filename.rb:6... -
Exception
# set _ backtrace(errinfo) -> nil | String | [String] (18301.0) -
バックトレース情報に errinfo を設定し、設定されたバックトレース 情報を返します。
バックトレース情報に 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>'"]
$!.se... -
Gem
:: ConfigFile # backtrace -> bool (18301.0) -
エラー発生時にバックトレースを出力するかどうかを返します。
エラー発生時にバックトレースを出力するかどうかを返します。
真の場合はバックトレースを出力します。そうでない場合はバックトレースを出力しません。 -
Gem
:: ConfigFile :: DEFAULT _ BACKTRACE -> false (18301.0) -
バックトレースが表示されるかどうかのデフォルト値です。
バックトレースが表示されるかどうかのデフォルト値です。 -
IRB
:: Context # use _ tracer -> bool (18301.0) -
irb への入力を評価する時に tracer が有効かどうかを返します。
irb への入力を評価する時に tracer が有効かどうかを返します。
@see tracer, IRB::Context#use_tracer= -
IRB
:: Context # use _ tracer=(val) (18301.0) -
irb への入力を評価する時に tracer が有効にするかどうかを val で 指定します。
irb への入力を評価する時に tracer が有効にするかどうかを val で
指定します。
.irbrc ファイル中で IRB.conf[:USE_TRACER] を設定する事でも同様の事が行
えます。
@param val tracer を有効にする場合に true を指定します。
@see tracer, IRB::Context#use_tracer -
IRB
:: Context # use _ tracer? -> bool (18301.0) -
irb への入力を評価する時に tracer が有効かどうかを返します。
irb への入力を評価する時に tracer が有効かどうかを返します。
@see tracer, IRB::Context#use_tracer= -
OptionParser
:: ParseError # set _ backtrace(array) -> [String] (18301.0) -
自身に array で指定したバックトレースを設定します。
自身に array で指定したバックトレースを設定します。
@param array バックトレースを文字列の配列で指定します。
@return array を返します。 -
OptionParser
:: ParseError . filter _ backtrace(array) -> [String] (18301.0) -
array で指定されたバックトレースから optparse ライブラリに関する行を除 外します。
array で指定されたバックトレースから optparse ライブラリに関する行を除
外します。
デバッグモード($DEBUGが真)の場合は何もしません。
@param array バックトレースを文字列の配列で指定します。
@return array を返します。 -
Thread
# backtrace -> [String] | nil (18301.0) -
スレッドの現在のバックトレースを返します。
スレッドの現在のバックトレースを返します。
スレッドがすでに終了している場合は nil を返します。
//emlist[例][ruby]{
class C1
def m1
sleep 5
end
def m2
m1
end
end
th = Thread.new {C1.new.m2; Thread.stop}
th.backtrace
# => [
# [0] "(irb):3:in `sleep'",
# [1] "(irb):3:in `m1'",
# [2] "(irb):6:in `m2'",
# [3] ... -
VALUE rb
_ f _ trace _ var(int argc , VALUE *argv) (18301.0) -
-
VALUE rb
_ f _ untrace _ var(int argc , VALUE *argv) (18301.0) -
-
static VALUE backtrace(int lev) (18301.0)
-
-
static VALUE get
_ backtrace(VALUE info) (18301.0) -
-
static VALUE make
_ backtrace(void) (18301.0) -
-
static void rb
_ trace _ eval(VALUE cmd , VALUE val) (18301.0) -
-
static void remove
_ trace(struct global _ variable *var) (18301.0) -
-
static void set
_ backtrace(VALUE info , VALUE bt) (18301.0) -
-
void rb
_ backtrace(void) (18301.0) -
-
TracePoint (18103.0)
-
Kernel.#set_trace_func と同様の機能をオブジェクト指向的な API で 提供するクラスです。
Kernel.#set_trace_func と同様の機能をオブジェクト指向的な API で
提供するクラスです。
//emlist[例:例外に関する情報を収集する][ruby]{
trace = TracePoint.new(:raise) do |tp|
p [tp.lineno, tp.event, tp.raised_exception]
end
# => #<TracePoint:0x007f786a452448>
trace.enable
# => false
0 / 0
# => [5, :raise, #<ZeroDivisionError: divided by 0... -
Net
:: HTTP :: Trace (18049.0) -
HTTP の TRACE リクエストを表すクラスです。
HTTP の TRACE リクエストを表すクラスです。 -
Tracer (18001.0)
-
実行トレース出力をとる機能を提供するクラスです。
実行トレース出力をとる機能を提供するクラスです。 -
irb
/ ext / tracer (18001.0) -
irb への入力を評価する時に tracer ライブラリを使用してトレース 出力を行う機能を提供するサブライブラリです。
irb への入力を評価する時に tracer ライブラリを使用してトレース
出力を行う機能を提供するサブライブラリです。
conf.use_tracer か IRB.conf[:USE_TRACER] に true を設定する事で使用でき
ます。ただし、Tracer.verbose? は常に false で実行されます。 -
TracePoint
. new(*events) {|obj| . . . } -> TracePoint (9391.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]
end
# => #<TracePoint:0x007f17372cdb20>
trace.enable
# => false
puts "Hello, TracePoint!"
# .... -
Etc
:: SC _ TRACE -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ TRACE _ EVENT _ FILTER -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ TRACE _ EVENT _ NAME _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ TRACE _ INHERIT -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ TRACE _ LOG -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ TRACE _ NAME _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ TRACE _ SYS _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ TRACE _ USER _ EVENT _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Tracer
:: Single -> Tracer (9301.0) -
@todo
@todo -
TracePoint
# disable -> bool (9181.0) -
self のトレースを無効にします。
self のトレースを無効にします。
実行前の TracePoint#enabled? を返します。(トレースが既に有効であっ
た場合は true を返します。そうでなければ false を返します)
//emlist[例][ruby]{
trace.enabled? # => true
trace.disable # => false (実行前の状態)
trace.enabled? # => false
trace.disable # => false
//}
ブロックが与えられた場合、ブロック内でのみトレースが無効になります。
この場合はブロックの評価結果を返します。
//e... -
TracePoint
# disable { . . . } -> object (9181.0) -
self のトレースを無効にします。
self のトレースを無効にします。
実行前の TracePoint#enabled? を返します。(トレースが既に有効であっ
た場合は true を返します。そうでなければ false を返します)
//emlist[例][ruby]{
trace.enabled? # => true
trace.disable # => false (実行前の状態)
trace.enabled? # => false
trace.disable # => false
//}
ブロックが与えられた場合、ブロック内でのみトレースが無効になります。
この場合はブロックの評価結果を返します。
//e... -
TracePoint
# enable -> bool (9181.0) -
self のトレースを有効にします。
self のトレースを有効にします。
実行前の TracePoint#enabled? を返します。(トレースが既に有効であっ
た場合は true を返します。そうでなければ false を返します)
//emlist[例][ruby]{
trace.enabled? # => false
trace.enable # => false (実行前の状態)
# トレースが有効
trace.enabled? # => true
trace.enable # => true (実行前の状態)
# 引き続きトレースが有効
//}
ブロックが与えられた場合、ブロック内でのみ... -
TracePoint
# enable { . . . } -> object (9181.0) -
self のトレースを有効にします。
self のトレースを有効にします。
実行前の TracePoint#enabled? を返します。(トレースが既に有効であっ
た場合は true を返します。そうでなければ false を返します)
//emlist[例][ruby]{
trace.enabled? # => false
trace.enable # => false (実行前の状態)
# トレースが有効
trace.enabled? # => true
trace.enable # => true (実行前の状態)
# 引き続きトレースが有効
//}
ブロックが与えられた場合、ブロック内でのみ... -
Tracer
. verbose=(flag) (9133.0) -
トレース出力の開始や終了を知らせる文字列("Trace on"または"Trace off")が必要なら真を設定します。
トレース出力の開始や終了を知らせる文字列("Trace on"または"Trace off")が必要なら真を設定します。
@param flag トレース出力の開始や終了を知らせる文字列が必要ならtrueを設定します。
require 'tracer'
Tracer.verbose = true
Tracer.on {
puts "Hello"
}
# 出力例
Trace on
#0:t5.rb:7::-: puts "Hello"
#0:t5.rb:7:Kernel:>: puts "Hello"
#0:t5.rb:7:IO:>: ... -
TracePoint
# defined _ class -> Class | module (9091.0) -
メソッドを定義したクラスかモジュールを返します。
メソッドを定義したクラスかモジュールを返します。
//emlist[例][ruby]{
class C; def foo; end; end
trace = TracePoint.new(:call) do |tp|
p tp.defined_class # => C
end.enable do
C.new.foo
end
//}
メソッドがモジュールで定義されていた場合も(include に関係なく)モジュー
ルを返します。
//emlist[例][ruby]{
module M; def foo; end; end
class C; include M; end;
trac... -
TracePoint
# binding -> Binding (9037.0) -
発生したイベントによって生成された Binding オブジェクトを返します。
発生したイベントによって生成された Binding オブジェクトを返します。
//emlist[例][ruby]{
def foo(ret)
ret
end
trace = TracePoint.new(:call) do |tp|
p tp.binding.local_variables # => [:ret]
end
trace.enable
foo 1
//} -
TracePoint
# callee _ id -> Symbol | nil (9037.0) -
イベントが発生したメソッドの呼ばれた名前を Symbol で返します。 トップレベルであった場合は nil を返します。
イベントが発生したメソッドの呼ばれた名前を Symbol で返します。
トップレベルであった場合は nil を返します。
@raise RuntimeError イベントフックの外側で実行した場合に発生します。
//emlist[][ruby]{
class C
def method_name
end
alias alias_name method_name
end
trace = TracePoint.new(:call) do |tp|
p [tp.method_id, tp.callee_id] # => [:method_name, :alias_name]
e... -
TracePoint
# event -> Symbol (9037.0) -
発生したイベントの種類を Symbol で返します。
発生したイベントの種類を Symbol で返します。
発生するイベントの詳細については、TracePoint.new を参照してくださ
い。
@raise RuntimeError イベントフックの外側で実行した場合に発生します。
//emlist[例][ruby]{
def foo(ret)
ret
end
trace = TracePoint.new(:call, :return) do |tp|
p tp.event
end
trace.enable
foo 1
# => :call
# :return
//} -
TracePoint
# inspect -> String (9037.0) -
self の状態を人間に読みやすい文字列にして返します。
self の状態を人間に読みやすい文字列にして返します。
//emlist[例][ruby]{
def foo(ret)
ret
end
trace = TracePoint.new(:call) do |tp|
p tp.inspect # "#<TracePoint:call `foo'@/path/to/test.rb:1>"
end
trace.enable
foo 1
//} -
TracePoint
# lineno -> Integer (9037.0) -
発生したイベントの行番号を返します。
発生したイベントの行番号を返します。
@raise RuntimeError イベントフックの外側で実行した場合に発生します。
//emlist[例][ruby]{
def foo(ret)
ret
end
trace = TracePoint.new(:call, :return) do |tp|
tp.lineno
end
trace.enable
foo 1
# => 1
# 3
//} -
TracePoint
# method _ id -> Symbol | nil (9037.0) -
イベントが発生したメソッドの定義時の名前を Symbol で返します。 トップレベルであった場合は nil を返します。
イベントが発生したメソッドの定義時の名前を Symbol で返します。
トップレベルであった場合は nil を返します。
@raise RuntimeError イベントフックの外側で実行した場合に発生します。
//emlist[][ruby]{
class C
def method_name
end
alias alias_name method_name
end
trace = TracePoint.new(:call) do |tp|
p [tp.method_id, tp.callee_id] # => [:method_name, :alias_name]
e... -
TracePoint
# path -> String (9037.0) -
イベントが発生したファイルのパスを返します。
イベントが発生したファイルのパスを返します。
@raise RuntimeError イベントフックの外側で実行した場合に発生します。
//emlist[例][ruby]{
def foo(ret)
ret
end
trace = TracePoint.new(:call) do |tp|
p tp.path # => "/path/to/test.rb"
end
trace.enable
foo 1
//} -
TracePoint
# raised _ exception -> Exception (9037.0) -
発生した例外を返します。
発生した例外を返します。
@raise RuntimeError :raise イベントのためのイベントフックの外側で実行し
た場合に発生します。
//emlist[例][ruby]{
trace = TracePoint.new(:raise) do |tp|
tp.raised_exception # => #<ZeroDivisionError: divided by 0>
end
trace.enable
begin
0/0
rescue
end
//} -
TracePoint
# return _ value -> object (9037.0) -
メソッドやブロックの戻り値を返します。
メソッドやブロックの戻り値を返します。
@raise RuntimeError :return、:c_return、:b_return イベントのためのイベ
ントフックの外側で実行した場合に発生します。
//emlist[例][ruby]{
def foo(ret)
ret
end
trace = TracePoint.new(:return) do |tp|
p tp.return_value # => 1
end
trace.enable
foo 1
//} -
TracePoint
# self -> object (9019.0) -
イベントを発生させたオブジェクトを返します。
イベントを発生させたオブジェクトを返します。
以下のようにする事で同じ値を取得できます。
//emlist[例][ruby]{
trace.binding.eval('self')
//}
@see TracePoint#binding -
Tracer
. add _ filter {|event , file , line , id , binding , klass| . . . . } (9019.0) -
トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。
トレース出力するかどうかを決定するフィルタを追加します。
何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。
与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば
トレースは出力されます。
フィルタは複数追加でき、
そのうち一つでも偽を返すとトレースの出力は抑制されます。
@param proc トレース出力するかどうかを決定する手続きオブジェクトを指定します。
通常、true か falseを返す必要があります。
フィルタ手続きは引数として event, file, line, id, binding, klass の... -
Tracer
. add _ filter(proc) (9019.0) -
トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。
トレース出力するかどうかを決定するフィルタを追加します。
何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。
与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば
トレースは出力されます。
フィルタは複数追加でき、
そのうち一つでも偽を返すとトレースの出力は抑制されます。
@param proc トレース出力するかどうかを決定する手続きオブジェクトを指定します。
通常、true か falseを返す必要があります。
フィルタ手続きは引数として event, file, line, id, binding, klass の... -
Thread
:: Backtrace :: Location (9001.0) -
Ruby のフレームを表すクラスです。
Ruby のフレームを表すクラスです。
Kernel.#caller_locations から生成されます。
//emlist[例1][ruby]{
# caller_locations.rb
def a(skip)
caller_locations(skip)
end
def b(skip)
a(skip)
end
def c(skip)
b(skip)
end
c(0..2).map do |call|
puts call.to_s
end
//}
例1の実行結果:
caller_locations.rb:2:in `a'
caller_locations... -
Thread
:: Backtrace :: Location # absolute _ path -> String (9001.0) -
self が表すフレームの絶対パスを返します。
self が表すフレームの絶対パスを返します。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.absolute_path
end
# => /path/to/foo.rb
# /path/to/foo.rb
# /path/to/foo.rb
//}
@see... -
Thread
:: Backtrace :: Location # base _ label -> String (9001.0) -
self が表すフレームの基本ラベルを返します。通常、 Thread::Backtrace::Location#label から修飾を取り除いたもので構成 されます。
self が表すフレームの基本ラベルを返します。通常、
Thread::Backtrace::Location#label から修飾を取り除いたもので構成
されます。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.base_label
end
# => init... -
Thread
:: Backtrace :: Location # inspect -> String (9001.0) -
Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文 字列に変換したオブジェクトを返します。
Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文
字列に変換したオブジェクトを返します。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.inspect
end
# => "path/to/foo.rb:5:in ... -
Thread
:: Backtrace :: Location # label -> String (9001.0) -
self が表すフレームのラベルを返します。通常、メソッド名、クラス名、モ ジュール名などで構成されます。
self が表すフレームのラベルを返します。通常、メソッド名、クラス名、モ
ジュール名などで構成されます。
例: Thread::Backtrace::Location の例1を用いた例
//emlist[][ruby]{
loc = c(0..1).first
loc.label # => "a"
//}
@see Thread::Backtrace::Location#base_label -
Thread
:: Backtrace :: Location # lineno -> Integer (9001.0) -
self が表すフレームの行番号を返します。
self が表すフレームの行番号を返します。
例: Thread::Backtrace::Location の例1を用いた例
//emlist[][ruby]{
loc = c(0..1).first
loc.lineno # => 2
//} -
Thread
:: Backtrace :: Location # path -> String (9001.0) -
self が表すフレームのファイル名を返します。
self が表すフレームのファイル名を返します。
例: Thread::Backtrace::Location の例1を用いた例
//emlist[][ruby]{
loc = c(0..1).first
loc.path # => "caller_locations.rb"
//}
@see Thread::Backtrace::Location#absolute_path -
Thread
:: Backtrace :: Location # to _ s -> String (9001.0) -
self が表すフレームを Kernel.#caller と同じ表現にした文字列を返し ます。
self が表すフレームを Kernel.#caller と同じ表現にした文字列を返し
ます。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.to_s
end
# => path/to/foo.rb:5:in `initialize'
# path/to/foo... -
TracePoint
# enabled? -> bool (9001.0) -
self のトレースが有効な場合に true を、そうでない場合に false を返しま す。
self のトレースが有効な場合に true を、そうでない場合に false を返しま
す。
@see TracePoint#enable, TracePoint#disable -
TracePoint
. stat -> object (9001.0) -
TracePoint の内部情報を返します。
TracePoint の内部情報を返します。
返り値の内容は実装依存です。
将来変更される可能性があります。
このメソッドは TracePoint 自身のデバッグ用です。 -
Tracer
# add _ filter(p = proc) (9001.0) -
@todo
@todo
フィルターを追加します。
@param p Proc オブジェクトを指定します。 -
Tracer
# get _ line(file , line) -> String (9001.0) -
@todo
@todo
@param file
@param line -
Tracer
# get _ thread _ no -> Integer (9001.0) -
@todo
@todo -
Tracer
# off -> () (9001.0) -
トレース出力を中断します。
トレース出力を中断します。 -
Tracer
# on -> () (9001.0) -
トレース出力を再開します。
トレース出力を再開します。
ブロックを与えるとブロックの実行中のみトレースを出力します。 -
Tracer
# on { . . . } -> () (9001.0) -
トレース出力を再開します。
トレース出力を再開します。
ブロックを与えるとブロックの実行中のみトレースを出力します。 -
Tracer
# set _ get _ line _ procs(file , p = proc) (9001.0) -
@todo
@todo -
Tracer
# stdout -> IO (9001.0) -
@see Tracer.stdout
@see Tracer.stdout -
Tracer
. display _ c _ call -> bool (9001.0) -
真ならば、ビルトインメソッドの呼び出しを表示します。 デフォルトは偽です。
真ならば、ビルトインメソッドの呼び出しを表示します。
デフォルトは偽です。 -
Tracer
. display _ c _ call=(flag) (9001.0) -
ビルトインメソッドの呼び出しを表示するかどうかを設定します。
ビルトインメソッドの呼び出しを表示するかどうかを設定します。
@param flag ビルトインメソッドの呼び出しを表示するならば、真を指定します。 -
Tracer
. display _ c _ call? -> bool (9001.0) -
真ならば、ビルトインメソッドの呼び出しを表示します。 デフォルトは偽です。
真ならば、ビルトインメソッドの呼び出しを表示します。
デフォルトは偽です。