Lily2解析

今日は[Lily2:lily.sourceforge.jp]のソース解読。プラグイン機能実装を解析中。

Object#instance_eval組み込み関数

そのObjectをselfに置いた状態でeval。動的にObjectの特異メソッド定義ができる。

Lily#Plugin#regist_plugin関数

grepしてもどこからも呼ばれてないと思ったらそもそも標準ではインラインプラグインがついてこない事が発覚。orz

_, func, args = */^(\w+) (.*)$/.match(arg)

RubyリファレンスののRegexpの項をみてたらこんな書き方を見つけた。

_, func, args = /^(\w+) (.*)$/.match(arg).to_aと同じ意味になるらしい。トリッキーだなぁ。