_HashTable があって、 OrderedSet は _HashTable と ContiguousArray をもっていて、 要素はArrayにいれといて、 _HashTable は値から配列のインデックスを逆引きできるように同期しているっぽい。OrderedDictionary は OrderedSet<Key> と ContiguousArray<Value> をもっていて、 2つのインデックスは揃えてあるっぽい。ManagedBuffer を使ってますね。 ただDequeのほうはStorageをstructにしてあって Storageが ManagedBufferPointer を使って ManagedBuffer を所有していて更にややこしい