XPCOM、インターフェースのメタ情報を取得する、nsIScriptableInterfaceInfo だらだらいろいろ調べてると、関係ないことが見つかる。 FirefoxのPythonアドオンとか、IRCクライアントの拡張とかあるんだね。 さておき。 やっぱり今日も独自のラッパーシステムを考えてた。 TinyURLを元に戻すとか、そこらへんのXPCOM使ったスニペットを書いてみたりして。 途中でHttpChannelに渡すリスナーをつくるところで、どうにも空実装済みのアブストラクトクラスがないから、コードが短くならない。 本質的じゃないコードも混じっちゃう。 本当に適当なコンポーネント(例えば@mozilla.org/network/stream-loader;1とか)のインスタンスから、無理にメソッドを剥ぎ取って、その情報をもとにスタブを作ろうかとも考えた。 やっぱり、途中のキャスト