plugin の仕様について (Re: [Hiki-dev] default+latex スタイル)

Masao Mutoh mutoh****@highw*****
2003年 8月 17日 (日) 18:49:05 JST


むとうです。

On Sun, 17 Aug 2003 18:09:39 +0900
Satoru Takabayashi <sator****@namaz*****> wrote:

> Masao Mutoh:
>  
> > すでに多くのプラグインができてるので、逆にプライベート
> > にしたいのだけを選ぶようにした方が良いかもしれませんね。
> > その方が、LightWeightなプラグインを書く(こちらがメインストリームだと
> > 思いますし(^^;))人に影響が無いですし。
> > 
> >     add_private_plugin_method(:amazonplot_internal)
> >     add_private_plugin_method(:googleplot_internal)
> 
> んと、ちょっと大きなプラグインを作る場合は、この方法ではしん
> どいので、
> 
>   * export_plugin_methods が呼ばれた場合
>     - 陽に export したメソッドのみがプラグインとして呼び出せる
> 
>   * export_plugin_methods が呼ばれなかった場合
>     - すべてのメソッドがプラグインとして呼び出せる (現状通り)
> 
> という仕様なら、すでにあるプラグインに影響はないし、大きめの
> なプラグインを書く場合にも都合がよいのではないかと思います。

大きめのプラグインでしたら、クラス化しては如何でしょうか。
例えば、今回のような場合、以下のようにすれば、プラグイン利用者から
はcall_os_cmd()メソッドを見えなくすることができるような気がします。

class Test
   def call_os_cmd(cmd)
      `#{cmd}`
   end
   def test
      str = call_os_cmd("ls /")
        :
        :
   end
end
                                                                                
def test
   Test.new.test
end


あれ?そういえば、{{Test.new.call_os_cmd("ls /")}}なんて書き方
できましたっけ?
できたらまずいですね(^^;)。
#ちょっと確認したところでは出来なさそうですけど....自信なし(^^;)。

-- 
.:% Masao Mutoh<mutoh****@highw*****>



Hiki-dev メーリングリストの案内
アーカイブの一覧に戻る