Пример #1
0
        public void UnionWith(IEnumerable <T> other)
        {
            var comp = new RuleSetInternalEqualityComparer();

            foreach (var deletR in other.Select(r => new KeyValuePair <string, T>(r.Tag, r)).Except(_rules, comp))
            {
                _rules.TryRemove(deletR.Key, out _);
            }
        }
Пример #2
0
        public void SymmetricExceptWith(IEnumerable <T> other)
        {
            var comp = new RuleSetInternalEqualityComparer();

            foreach (var item in other.Distinct(comp))
            {
                if (!_rules.TryRemove(item.Tag, out _))
                {
                    _rules.GetOrAdd(item.Tag, item);
                }
            }
        }