-長野新幹線

はじめて乗ります。長野新幹線。一時間ちょっとで東京-長野。そのあとバスで1時間半ぐらいで熊の湯温泉です。バスは1時間に1本ぐらいとのことですから、ちょっと余裕めにでます。読み物がないんで、会社によってNekoHTMLソースコード持っていこう。HTMLScannerが惜しいつくりなんですよ。メソッドやメンバーをprotectedにしてくれていて拡張することを考えてくれているのかとも思えるところ、肝心要で難しいようになってます。パースするメソッドがdoループにガッチリはいっていて拡張用の「捨てメソッド」がないためです。パース開始の一番初めに一度イベントがあればいろんなことができるのですが、そういうのは用意されていない。しかし、はじめは直接ソースいじらないと無理かなと思っていたところ、ソース眺めているうちにいくらかトリッキーにでもできるようにはなっています。
Mayaははじめから拡張することを考えているつもりでやってます。平行して商用版も作ってます。その中でコア部分のメソッドや作りをアダプタ可能にしています。が、しょせん同じEclipseワークスペース上で開発されるものなのでどこまで柔軟にできているかは怪しい。これからです。ま、契約書には捨印を押すように、デカいロジックには捨てメソッドが必要ということですね。TemplateProcessorHandlerのstartElement()にも同じことがいえるな。行きの新幹線で考えよう。