Mimic

インスタントメッセンジャーには、ユーザやメンバの状態(Status)が存在するのですが、プロトコル毎にどんな状態があるかっていう状態一覧をどのように表現するかを検討中。
何かを列挙するのに、一番よく使われているのはnsISupportsArrayですが、これは古いインタフェースみたいで、nsIArrayを使うべきとされています。
また、次によく使われているのはnsISimpleEnumeratorです。Enumeratorは配列であることを要求しないので内部表現がリンクドリストであったり、関数だったりしても構わないと言う性質があったりはしますが、メンバの状態一覧は通常固定なので、単にnsIArrayを返すというのが最もシンプルでいいかもしれません。