KG
kg_soft****@yahoo*****
2006年 1月 11日 (水) 20:05:34 JST
KGです。 On Wed, 11 Jan 2006 19:17:11 +0900 Naoki Takezoe <takez****@gmail*****> wrote: > 内部の構造は変更される可能性があるので互換性が担保できない > 可能性があると意識しといていただければ特に問題ないです。 了解しました。 互換性に関しては、可能な限り私の方でコアの最新バージョンに対応していこうと思っています。 > また、オーバーライドに関しても、ユーザさんとしてはパッチを > あてるよりもプラグイン形式でインストールできたほうが便利ですし、 > プラグインごとにオーバーライドしているメソッド等について詳しく > 書いていただいているので誤解もないと思います。 パッチを当てるという作業は思いの他、重労働です。 個別の修正箇所が多くなるにつれてコマンドでは対応できなくなることもあり その為に最新バージョンへアップデートできなくなることもあります。 そういう意味で、できる限りプラグイン形式で提供できれば 私自身も含め、他のユーザーさんも幸せになれるかなぁと思っています。 > そういった配慮さえしていただければ、非推奨とはいえこういった > 方法を使ったプラグインもありだと思います。逆にフレームワークの > 提供するAPIで実現できない点が明確になりますしね。 そうですね。 フレームワークの完成度が高いからこそできる拡張だと思っています。 コアの拡張時には、できる限りフレームワークの骨格を保てる形で拡張しているつもりです。 > > > ということを踏まえたうえで。 > > > > > 〜中略〜 > > > > > > $parser->{html} = ""; は $resultに1行ずつ追加してるので > > > 1ループごとにクリアしてるだけです(プラグイン部分を処理させるのに > > > 使ってるだけなので、本来は毎回クリアする必要はないと思いますが)。 > > > なので、CacheParser::process_cache側で$parser->{html} の制御を > > > 行うのであれば不要ではないかと思います。 > > > > ちょっと、意味合い的に異なるのですが、 > > もともと推奨されない方法ですので深くはお聞きしにくい・・・(^^;;; > > > > CacheParser で $parser->{html} を制御するのではなくプラグイン側で制御しています。 > > つまり、直前までのパース結果をプラグイン側で変換(置換)するのに利用しています。 > > なるほど…、そういう処理を行っているわけですねぇ…。 > うまく拡張ポイントとして切り出せるといいのですが、 > まあ、それは別途考えることとして。 > > 私が言いたかったのは$resultの代わりに$parser->{html}に対して > プラグイン部分以外をCacheParser側でアペンドしてやれば今と同じ > 処理になるはず、ということでした。添付していただいたCacheParserを > 拝見したところ、上記の通りのようですので修正しても特に問題ないと思います。 > > HTMLParserとの挙動をあわせるという意味で、このCacheParserの > 修正は3.5系にコミットしようと思います。 コアに取り込んで頂けるようで・・・ さすがにコアへのコミットまでは考えていなかったので嬉しいです。 ありがとうございます。 -- KG <kg_soft****@yahoo*****> http://kgsoft.jf.land.to/