• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:[[:t/ページセット]] [[:t/名前]] [[:t/サブセットWiki]]

サブセットWikiの実体。
ページの集合。

----

#contents

***ページオブジェクトも含む [#u3b6c299]
ページセットはページ名(一意になるもの/文字列)、ページ内部名(文字列)、ページオブジェクトのいずれでもよくしたい。それぞれの区別はできるので型の混乱はない。
ページセットはページ名(一意になるもの/ページ名オブジェクト)、ページ内部名(ページ名オブジェクト)、ページオブジェクトのいずれでもよくしたい。それぞれの区別はできるので型の混乱はない。

実装はPagesetEntryのような名前のI/Fの実装で。それをページセットの要素にして。
*あとでなおす [#x3217bd7]
** [#g6e74cf7]

ページ/名前の %%集合%% リスト。


-検索結果(あれば)、なければ空集合。
-RegExpで。評価されたときの全ページをフィルタリング。
-ページ名やディレクトリ名をユーザーから指定されて。
含まれるページ名がページセット。

サブセットWikiと検索に必要なもの。

ページセットの表示形態が機能/一覧。


* [#bdd70757]
** [#bdd70757]
ページセットはページ名のリスト。
要素はページ/名前。

検索はページセットが自身を縮小する処理のこと。検索/クエリーの機能。
HTML出力時は内容(ページ名)の一覧になる。検索/フォーマットの機能。

クエリー ─◇ ページセット ◇─ フォーマット

ページセットは初期状態でもデフォルトの検索/クエリーと、デフォルトの検索/フォーマットを持つ。
**検索 [#f31c6921]
検索の実装はページセットで。
呼び出された時に与えられた検索/クエリーと、自身が持つページを比較。

クエリーもページも複数のElementの集約。
Elementの集約を扱うのはクエリーやページ。Element同士のことはクエリー側のElementに任せる。ページ側Elementはデータの提供だけ。

ページセット ◇─ ページ ◇─ Element ─◇ クエリー

なので、クエリー付きで呼び出されたときは
-自身が持つページのうちの1つを
-クエリーに与える

あとはクエリー任せ。ページセット自身が行うのはページ単位のイテレーションだけ。
HTML出力を求められたときは結果(検索で縮小した後の自身)を検索/フォーマットに与える。だけ。