From: URA Takefumi Date: 2003-09-06T03:11:43+09:00 Subject: [ruby-list:38364] rtagsでmodule/class methodの扱い 浦です。 rtagsについてです。module及びclass methodの定義で、表記によって挙動が変 わるのは既知なんでしょうか? ちょっと長いのでサンプルは末尾につけますが、挙動としては ・def Mod::foo のように表記したらメソッド名(foo)がTAGSに現れない(とい うか、メソッド名があるべき場所に「?」が現れる) ・def Mod.foo のような表記であれば大丈夫というものです。 というものです。サンプルでは Mod::foo と Cls::foo がTAGSで対応すると思わ れるものが「def Mod^?::Mod#Mod^A2,13」及び「def Cls^?::Cls#Cls^A9,69」の ように出ています。 rtagsはirb-tools-0.9に付属のものを使いました(最新ですよね?)。 % ruby -v ruby 1.6.8 (2003-03-26) [i386-freebsd4] % cat foo.rb cat foo.rb module Mod def Mod::foo end def Mod.bar end end class Cls def Cls::foo end def Cls.bar end end % rtags foo.rb -- -- parse file: foo.rb module ::Mod in # def ::Mod#Mod in # def ::Mod.bar in # class ::Cls in # def ::Cls#Cls in # def ::Cls.bar in # % cat TAGS ^L foo.rb,151 module Mod^?::Mod^A1,0 def Mod^?::Mod#Mod^A2,13 def Mod.bar^?::Mod.bar^A4,34 class Cls^?::Cls^A8,57 def Cls^?::Cls#Cls^A9,69 def Cls.bar^?::Cls.bar^A11,90 -- 浦 岳史 (うら たけふみ) mailto:hage@power.email.ne.jp