Ruby 2.2.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Thread::Backtrace::Locationクラス
クラスの継承リスト: Thread::Backtrace::Location < Object < Kernel < BasicObject
Ruby のフレームを表すクラスです。
Kernel.#caller_locations から生成されます。
例1:
# 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.rb:5:in `b' caller_locations.rb:8:in `c'
例2:
# 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
例2の実行結果:
init.rb:4:in `initialize' init.rb:8:in `new' init.rb:8:in `<main>'
absolute_path -> String
[permalink][rdoc]self が表すフレームの絶対パスを返します。
[SEE_ALSO] Thread::Backtrace::Location#path
base_label -> String
[permalink][rdoc]self が表すフレームの基本ラベルを返します。通常、 Thread::Backtrace::Location#label から修飾を取り除いたもので構成 されます。
[SEE_ALSO] Thread::Backtrace::Location#label
inspect -> String
[permalink][rdoc]Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文 字列に変換したオブジェクトを返します。
label -> String
[permalink][rdoc]self が表すフレームのラベルを返します。通常、メソッド名、クラス名、モ ジュール名などで構成されます。
例: Thread::Backtrace::Location の例1を用いた例
loc = c(0..1).first loc.label # => "a"
[SEE_ALSO] Thread::Backtrace::Location#base_label
lineno -> Integer
[permalink][rdoc]self が表すフレームの行番号を返します。
例: Thread::Backtrace::Location の例1を用いた例
loc = c(0..1).first loc.lineno # => 2
path -> String
[permalink][rdoc]self が表すフレームのファイル名を返します。
例: Thread::Backtrace::Location の例1を用いた例
loc = c(0..1).first loc.path # => "caller_locations.rb"
[SEE_ALSO] Thread::Backtrace::Location#absolute_path
to_s -> String
[permalink][rdoc]self が表すフレームを Kernel.#caller と同じ表現にした文字列を返し ます。