• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:&tag(プラグイン);

PageElementを書けるところその2。例えばプラグイン呼び出し記法のパラメーターを書くところ。
ここにプラグイン呼び出しを書くとHTMLではなく再処理しやすいデータを生成する。(どんなデータかはElement次第)

その1はHTMLコンテキストと呼んでおく?もっと柔軟に。多彩に。
HTMLコンテキスト、ページ名セットコンテキスト、…のように。どんなデータをリクエストするかは土台になっているElement次第。そのリクエストにどう答えるかは呼ばれる(内側の)Element次第。

----------

データ型は統一しなければならない。参照可能ならいい。
Perlのリスト型ような。戻り値がリスト型・ハッシュ型2通りのI/Fがあってもいい。どちらも内容は近くなるように。


----------------------------------------

子要素は複数あるもの。
それらの戻り値を合成する必要があるけど、合成ルールは親要素のコード次第。
適当にまとめて、型は変えないで。
特殊なことではないので専用ライブラリは要らない。


**命名規則の例 [#i3ab99f7]
-Element.ToPagenameSet
ページ名の集合。順序なし。
-ToPagenameList
ページ名の順序ありリスト。
-ToHTML
HTML(単要素)
-ToWikiText
WikiText。つまり処理前の入力されたデータそのまま。単要素。
-ToDataSet
何かの集合。Element次第。呼び出した方もそれなりに処理。

で、Elementによってはこれが別のメソッドのラッパーだったりしていい。