コード例 #1
0
    public void Add(KeyValuePair <TKEY, TVALUE> item)
    {
        var sortKey = new SortedDictionaryKey(_SortFunc(item.Value), item.Key);

        _InternalDict.Add(item.Key, item.Value);
        _SortedKeys.Add(sortKey, item.Key);
        _SortedValues.Add(sortKey, item.Value);
    }
コード例 #2
0
    private Boolean RemoveInternal(TKEY key, TVALUE val)
    {
        if (!_InternalDict.Remove(key))
        {
            return(false);
        }
        var sortKey = new SortedDictionaryKey(_SortFunc(val), key);
        var retVal  = _SortedKeys.Remove(sortKey);

        return(retVal || _SortedValues.Remove(sortKey));
    }
コード例 #3
0
    public void Add(TKEY key, TVALUE value)
    {
        if (key == null)
        {
            throw new ArgumentException("Null key is not allowed.");
        }
        var sortKey = new SortedDictionaryKey(_SortFunc(value), key);

        _InternalDict.Add(key, value);
        _SortedKeys.Add(sortKey, key);
        _SortedValues.Add(sortKey, value);
    }