/// <summary> /// Returns the value by key /// </summary> public TValue this[TKey key] { get { ONListDictionaryEntry <TKey, TValue> lEntry = mItemsByKey[key]; if (lEntry == null) { return(default(TValue)); } else { return(lEntry.Value); } } set { ONListDictionaryEntry <TKey, TValue> lEntry = mItemsByKey[key]; if (lEntry == null) { Add(key, value); } else { lEntry.Value = value; } } }
/// <summary> /// Adds an object to the dictionary /// </summary> /// <param name="key">Key of the object</param> /// <param name="value">Object to add</param> public void Add(TKey key, TValue value) { mMaxIndex++; ONListDictionaryEntry <TKey, TValue> lEntry = new ONListDictionaryEntry <TKey, TValue>(mMaxIndex, key, value); mItemsByKey.Add(lEntry.Key, lEntry); mItemsByIndex.Add(lEntry.Index, lEntry); }