Ruby 2.7.0 リファレンスマニュアル > ライブラリ一覧 > tracerライブラリ > Tracerクラス

class Tracer

クラスの継承リスト: Tracer < Object < Kernel < BasicObject

要約

実行トレース出力をとる機能を提供するクラスです。

特異メソッド

定義 説明
add_filter(proc)
add_filter {|event, file, line, id, binding, klass| .... }

トレース出力するかどうかを決定するフィルタを追加します。何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。与えられた手続き(ブロックまたはProcオブジェクト)が真を返せばトレースは出力されます。

display_c_call -> bool
display_c_call? -> bool

真ならば、ビルトインメソッドの呼び出しを表示します。デフォルトは偽です。

display_c_call=(flag)

ビルトインメソッドの呼び出しを表示するかどうかを設定します。

display_process_id -> bool
display_process_id? -> bool

真ならば、プロセス ID を表示します。デフォルトは、偽です。

display_process_id=(flag)

プロセス ID を表示するかどうかを設定します。

display_thread_id -> bool
display_thread_id? -> bool

真ならば、スレッド ID を表示します。デフォルトは、真です。

display_thread_id=(flag)

スレッド ID を表示するかどうかを設定します。

new

自身を初期化します。

off -> nil

トレース出力を中断します。トレース出力を開始するには、Tracer.onを使用します。

on -> nil
on {...}

トレース出力を開始します。ブロックを与えられた場合はそのブロック内のみトレース出力を行います。

set_get_line_procs(filename, proc)
set_get_line_procs(filename) {|line| .... }

あるファイルについて利用する、行番号からソースのその行の内容を返す手続きを指定します。何も指定しなければデフォルトの動作が利用されます。指定する手続きは行番号を唯一の引数として呼び出されます。

stdout -> object

トレース出力先を参照します。

stdout=(fp)

トレース出力先を変更します。

stdout_mutex -> Mutex

@todo

verbose -> bool
verbose? -> bool

真ならばトレース出力の開始や終了を知らせます。

verbose=(flag)

トレース出力の開始や終了を知らせる文字列("Trace on"または"Trace off")が必要なら真を設定します。

インスタンスメソッド

定義 説明
add_filter(p = proc)

@todo

get_line(file, line) -> String

@todo

get_thread_no -> Integer

@todo

off -> ()

トレース出力を中断します。

on -> ()
on { ... } -> ()

トレース出力を再開します。

set_get_line_procs(file, p = proc)

@todo

stdout -> IO

@see Tracer.stdout

trace_func(event, file, line, id, binding, klass, *) -> object | nil

@todo

定数

定義 説明
EVENT_SYMBOL

トレース出力のシンボルのハッシュです。下記のような文字列があります。

Single -> Tracer

@todo

継承したメソッド

! != __id__ instance_eval instance_exec method_missing singleton_method_added singleton_method_removed singleton_method_undefined !~ <=> == === =~ __send__ _dump class clone define_singleton_method display enum_for eql? equal? extend freeze frozen? hash initialize initialize_copy inspect instance_of? instance_variable_defined? instance_variable_get instance_variable_set instance_variables is_a? itself marshal_dump marshal_load method methods nil? object_id pretty_inspect pretty_print pretty_print_cycle pretty_print_inspect pretty_print_instance_variables private_methods protected_methods psych_to_yaml public_method public_methods public_send remove_instance_variable respond_to? respond_to_missing? singleton_class singleton_method singleton_methods taint tainted? tap then to_a to_ary to_hash to_int to_io to_proc to_regexp to_s to_str trust untaint untrust untrusted? .yaml_tag ::ARGF ::ARGV ::DATA ::ENV ::FALSE ::NIL ::RUBY_COPYRIGHT ::RUBY_DESCRIPTION ::RUBY_ENGINE ::RUBY_ENGINE_VERSION ::RUBY_PATCHLEVEL ::RUBY_PLATFORM ::RUBY_RELEASE_DATE ::RUBY_REVISION ::RUBY_VERSION ::SCRIPT_LINES__ ::STDERR ::STDIN ::STDOUT ::TOPLEVEL_BINDING ::TRUE

追加されるメソッド

定義 説明 ライブラリ
trace_func(*vars) -> object | nil

debug ライブラリの内部で使用します。

debug