インターフェース:IDictionaryEnumerator


if に続く条件式 dict != null が成立するなら、変数 dict によって参照される引数は、インターフェース IEnumerator で規定したプロトコルに従います。そこで、メソッド本体を見ると、次に示す典型的な C# のイディオムが記述してあります。

    IDictionaryEnumerator e = dict.GetEnumerator();
while (e.MoveNext()) {
self[DictOps.NullToObj(e.Key)] = e.Value;
}

インターフェース IDictionaryEnumerator で規定したプロトコルに従って、各要素 e を順に参照します。メソッド呼び出し dict.update の対象となるインスタンス self に対して、キー要素 e.Key と値要素 e.Value とを登録します。このとき(次に示す)補助関数 NullToObj を使うと、キー要素として無効な null の代わりに、有効な None がキー要素になります。
《参照》インターフェース IDictionaryEnumerator の詳細は、http://msdn.microsoft.com/en-us/library/system.collections.idictionaryenumerator.aspx を参照してください。□