[前][次][番号順一覧][スレッド一覧]

ruby-reference-manual:93

From: Minero Aoki <aamine@l...>
Date: Wed, 20 Sep 2006 01:30:04 +0900 (JST)
Subject: [ruby-reference-manual:93] Re: bc-convert.rb deletes ((<ruby x.x feature>)) in method line

青木です。

  In mail "[ruby-reference-manual:86] Re: bc-convert.rb deletes ((<ruby x.x feature>)) in method line"
  "Ken Date" <itacchi@g...> wrote:

> 伊達です。

> annotation が使えると便利だと思いました。
> 例えば、
> 
> #@version >= "1.8.0"
> ---- some_method(arg1, arg2)
> ...
> 
> と書けば
> 
> #@if (version >= "1.8.0")
> ---- some_method(arg1, arg2)
> ...
> #@end
> 
> と同じ効果になるとか。

うーむ、それはあまりやりたくありません。プリプロセッサが処理対象の
文法まで見るようになると、予期しない問題を抱え込む可能性が高いからです。

RHG を書くときに、原稿のプリプロセッサから文法を見ていろいろする
ようにしてたんですが、原稿を書き終わるころには関係が複雑になりすぎて
手に負えなくなってました。記述の間違いに気付かなくなる可能性も非常に
上がります。

どうせやるなら、文法自体にバージョン情報を組み込むか (非常に難しい)、
プリプロセッサの範囲内でショートカット用の命令を作ることでしょうね。
例えば

  #@from "1.8.0"
  --- some_method(arg1, arg2)
  ...
  #@end

とか。……あんま短くならないなあ。

--
青木峰郎

--
ML: ruby-reference-manual@m...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

        84 2006-09-17 08:24 [sheepman@s...       ] bc-convert.rb deletes ((<ruby x.x feature>)) in method line
        86 2006-09-17 09:28 ┣[itacchi@g...        ]                                       
->      93 2006-09-19 18:30 ┃┗[aamine@l...         ]                                     
        94 2006-09-19 18:54 ┃ ┗[itacchi@g...        ]                                   
        95 2006-09-19 19:08 ┃  ┗[aamine@l...         ]                                 
        96 2006-09-19 19:29 ┃   ┣[aamine@l...         ]                               
        97 2006-09-20 04:07 ┃   ┗[zn@m...             ]                               
        98 2006-09-20 16:22 ┃    ┣[aamine@l...         ]                             
        99 2006-09-20 18:52 ┃    ┗[aamine@l...         ] IP unreachable              
        88 2006-09-17 10:31 ┗[aamine@l...         ]