From: TAKAHASHI Masayoshi Date: 2001-09-07T08:31:06+09:00 Subject: [ruby-dev:14738] Re: ruby-lex.rb: get value from TkSTRING and TkCOMMENT 高橋征義です。 keiju@ishitsuka.com (石塚圭樹) wrote: > >ruby-lex.rb を使っているのですが、 > > おお... 聞いたことあるかも知れませんが、何に使っているのでしたっけ? 最近PHPを使い始めてて、PHPDoc(JavaDocもどき)がわりといい感じ だったので、Rubyでもこういう感じに書けるといいかなあ、と 思って、それっぽいものを少し書いているのでした。 > >TkSTRINGとTkCOMMENTとについて、 obj.value でその文字列そのもの、コメン > >トそのものを取り出せるようにはできないでしょうか? > > このリクエストも前にあったような... > > TkSTRINGも使っているんですか? メソッドのデフォルト値で文字列を使ったものくらいは parseできないとまずいかな、と。 > Tk*STRINGはただの文字列ではなく、"foo#{ls}"見たいのもあり得るわけですが、 > それらはそのままになりますがよろしいです? といってもそれ以外にできないん > ですけどね. それはぜんぜん構いません。 > >変更は ruby-lex.rb と ruby-token.rb とをこんな感じに > >するとできると思います。 > > TkSTRINGになるのは"..."と'...'と両方でtoken上区別なくなるのですが、 > "..."の方は``\''をちゃんと解釈しないといけないですね. > あとは,TkRD_COMMENTとヒアドキュメントも考慮しないといけないですね. む、そうですね。こっちは使わないので失念してました。 というか、任意の式をメソッド引数のデフォルト値として書かれると parseするのは辛すぎますね……「禁止禁止」というわけにもあんまり いかないでしょうし。やっぱり引数はまじめにparseしない方が 幸せへの道かも。 ところで、Rubyのコメントってescapeを解釈しない、つまり 行末に「\」があってもコメント行は継続しない、という 仕様でいいんですよね? 高橋征義 (TAKAHASHI Masayoshi) E-mail: maki@open-news.com