要約
抽象構文木のノード(RubyVM::AbstractSyntaxTree::Node)に関連づけられた位置情報を表すクラスです。
RubyVM::AbstractSyntaxTree::Node#locations で取得できます。
RubyVM::AbstractSyntaxTree と同様に MRI の実装の詳細を表す実験的な API であり、予告なしに変更される可能性があります。
目次
- インスタンスメソッド
インスタンスメソッド
first_column -> IntegerRuby 3.4 から[permalink][rdoc][edit]-
ソースコード中で、この位置情報が指す範囲が始まる列番号を返します。
列番号は0-originで、バイト単位で表されます。
loc = RubyVM::AbstractSyntaxTree.parse('1 + 2').locations.first p loc.first_column # => 0 first_lineno -> IntegerRuby 3.4 から[permalink][rdoc][edit]-
ソースコード中で、この位置情報が指す範囲が始まる行番号を返します。
行番号は1-originです。
loc = RubyVM::AbstractSyntaxTree.parse('1 + 2').locations.first p loc.first_lineno # => 1 last_column -> IntegerRuby 3.4 から[permalink][rdoc][edit]-
ソースコード中で、この位置情報が指す範囲が終わる列番号を返します。
列番号は0-originで、バイト単位で表されます。
loc = RubyVM::AbstractSyntaxTree.parse('1 + 2').locations.first p loc.last_column # => 5 last_lineno -> IntegerRuby 3.4 から[permalink][rdoc][edit]-
ソースコード中で、この位置情報が指す範囲が終わる行番号を返します。
行番号は1-originです。
loc = RubyVM::AbstractSyntaxTree.parse('1 + 2').locations.first p loc.last_lineno # => 1