/// <summary> /// Remove a key/value from the dictionary if present. /// </summary> /// <param name="k">key</param> /// <returns>True if removal worked. False if removal is not possible.</returns> public bool Remove(TK k) { if (!ContainsKey(k)) { return(false); } LLEntry entry = dictionary[k]; list.Remove(entry.vNode); return(dictionary.Remove(k)); }
/// <summary> /// Add an item. Replacement is allowed. /// </summary> /// <param name="k">key</param> /// <param name="v">value</param> public void Add(TK k, TV v) { Remove(k); dictionary[k] = new LLEntry(v, list.AddLast(v)); }