Ruby 4.0 リファレンスマニュアル

singleton method RubyVM::AbstractSyntaxTree.node_id_for_backtrace_location

node_id_for_backtrace_location(backtrace_location) -> IntegerRuby 3.2 から[permalink][rdoc][edit]

引数の Thread::Backtrace::Location が指すコードの位置に対応するノードの ID を返します。

ID は RubyVM::AbstractSyntaxTree::Node#node_id と同じ体系の整数で、具体的な値は Ruby のバージョンやパーサによって異なります。

[PARAM] backtrace_location:
Thread::Backtrace::Location を指定します。
[EXCEPTION] TypeError:
backtrace_location が Thread::Backtrace::Location でない場合に発生します。
loc = caller_locations(0, 1).first
p RubyVM::AbstractSyntaxTree.node_id_for_backtrace_location(loc) # => 3

[SEE_ALSO] RubyVM::AbstractSyntaxTree::Node#node_id