ライブラリ
- ビルトイン (11)
- debug (11)
-
irb
/ ext / tracer (33) -
irb
/ extend-command (11) - tracer (385)
クラス
-
IRB
:: Context (33) - Tracer (385)
モジュール
-
IRB
:: ContextExtender (11) - Kernel (11)
キーワード
-
EVENT
_ SYMBOL (11) -
NEWS for Ruby 2
. 6 . 0 (6) -
NEWS for Ruby 2
. 7 . 0 (5) -
NEWS for Ruby 3
. 1 . 0 (3) - Single (11)
- Tracer (11)
-
add
_ filter (33) -
display
_ c _ call (11) -
display
_ c _ call= (11) -
display
_ c _ call? (11) -
display
_ process _ id (11) -
display
_ process _ id= (11) -
display
_ process _ id? (11) -
display
_ thread _ id (11) -
display
_ thread _ id= (11) -
display
_ thread _ id? (11) -
get
_ line (11) -
get
_ thread _ no (11) -
install
_ extend _ commands (11) - irb (11)
-
irb
/ ext / tracer (11) - new (11)
- off (22)
- on (44)
-
set
_ get _ line _ procs (33) -
set
_ trace _ func (11) - stdout (22)
- stdout= (11)
-
stdout
_ mutex (11) -
trace
_ func (22) -
use
_ tracer (11) -
use
_ tracer= (11) -
use
_ tracer? (11) - verbose (11)
- verbose= (11)
- verbose? (11)
検索結果
先頭5件
-
tracer (44048.0)
-
実行トレース出力をとる機能を提供します。
...Kernel.#require する方法です。
hoge.rb の実行をすべてトレース出力します。
ruby -rtracer hoge.rb
もうひとつはソースからrequireする方法です。
require 'tracer'
とした後
Tracer.on
によりトレース出力を有効にします。
Tracer.off...... Tracer.on を呼び出すと、そのブロック内のみ
トレースを出力します。
=== サンプルコード
# 例: 式の評価の中でHogeクラスのメソッドが呼び出される時、トレースする。
# ruby 1.8 では警告がでますが、動作します。
requir......e 'tracer'
class Hoge
def Hoge.fuga(i)
"fuga #{i}"
end
end
Tracer.add_filter {|event, file, line, id, binding, klass|
event =~ /line/ and klass.to_s =~ /hoge/i
}
Tracer.on
for i in 0..3
puts Hoge.fuga(i) if i % 3 == 0
end
Tracer.off
=== SEE ALSO
Kernel.#set... -
Tracer
. set _ get _ line _ procs(filename) {|line| . . . . } (26218.0) -
あるファイルについて利用する、行番号からソースのその行の内容を返す 手続きを指定します。何も指定しなければデフォルトの動作が利用されます。 指定する手続きは行番号を唯一の引数として呼び出されます。
...param filename ソースファイルの場所を文字列で指定します。
@param proc 通常、文字列を返す手続きオブジェクトを指定します。
# 例 dummy.rb の3行目から6 行目のトレース出力に !! をつける
require 'tracer'
Tracer.set_get_line_procs('......./dummy.rb'){|line|
str = "\n"
str = "!!\n" if line >= 3 and line <= 6
str
}
Tracer.on
require 'dummy'
dm = Dummy.new
puts dm.number
=begin
# dummy.rb
class Dummy
def initialize
@number = 135
end
attr :number
end
=end... -
Tracer
. set _ get _ line _ procs(filename , proc) (26218.0) -
あるファイルについて利用する、行番号からソースのその行の内容を返す 手続きを指定します。何も指定しなければデフォルトの動作が利用されます。 指定する手続きは行番号を唯一の引数として呼び出されます。
...param filename ソースファイルの場所を文字列で指定します。
@param proc 通常、文字列を返す手続きオブジェクトを指定します。
# 例 dummy.rb の3行目から6 行目のトレース出力に !! をつける
require 'tracer'
Tracer.set_get_line_procs('......./dummy.rb'){|line|
str = "\n"
str = "!!\n" if line >= 3 and line <= 6
str
}
Tracer.on
require 'dummy'
dm = Dummy.new
puts dm.number
=begin
# dummy.rb
class Dummy
def initialize
@number = 135
end
attr :number
end
=end... -
Tracer
# set _ get _ line _ procs(file , p = proc) (26200.0) -
@todo
@todo -
Tracer
. verbose=(flag) (26118.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:>: puts "Hello"
Hello#0:t5.rb:7:IO:<: puts "Hello"
#0:t5.rb:7:IO:>: puts "Hello"
#0:t5.rb:7:IO:<: puts "Hello"
#0:t5.rb:7:Kernel:<: puts "Hello"
Trace off... -
Tracer
. add _ filter {|event , file , line , id , binding , klass| . . . . } (26112.0) -
トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。
...通常、true か falseを返す必要があります。
フィルタ手続きは引数として event, file, line, id, binding, klass の
6 つをとります。
Kernel.#set_trace_func で指定するものとほぼ同じです。
=== フィルタ手続きのパラメータ
: event
イベン......内は tracer の出力での表記。
//emlist{
* line (-) ある行を実行
* call (>) メソッド呼び出し
* return (<) メソッドからのリターン
* class (C) クラスコンテキストに入った
* end (E) クラスコンテキストから出た
* raise......例外が発生した
* c-call Cで記述されたメソッドが呼ばれた
* c-return Cで記述されたメソッドからreturn
//}
: file
現在処理しているファイルの名前
: line
現在処理している行番号
: id
最後に呼び出されたメソッドのメ... -
Tracer
. add _ filter(proc) (26112.0) -
トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。
...通常、true か falseを返す必要があります。
フィルタ手続きは引数として event, file, line, id, binding, klass の
6 つをとります。
Kernel.#set_trace_func で指定するものとほぼ同じです。
=== フィルタ手続きのパラメータ
: event
イベン......内は tracer の出力での表記。
//emlist{
* line (-) ある行を実行
* call (>) メソッド呼び出し
* return (<) メソッドからのリターン
* class (C) クラスコンテキストに入った
* end (E) クラスコンテキストから出た
* raise......例外が発生した
* c-call Cで記述されたメソッドが呼ばれた
* c-return Cで記述されたメソッドからreturn
//}
: file
現在処理しているファイルの名前
: line
現在処理している行番号
: id
最後に呼び出されたメソッドのメ... -
Tracer
# add _ filter(p = proc) (26100.0) -
@todo
@todo
フィルターを追加します。
@param p Proc オブジェクトを指定します。 -
Tracer
. verbose -> bool (26100.0) -
真ならばトレース出力の開始や終了を知らせます。
真ならばトレース出力の開始や終了を知らせます。 -
Tracer
. verbose? -> bool (26100.0) -
真ならばトレース出力の開始や終了を知らせます。
真ならばトレース出力の開始や終了を知らせます。