コード例 #1
0
 void IList.Clear()
 {
     if (_innerSet.Any())
     {
         ((IList)_innerSet).Clear();
     }
     if (_extendedSet.Any())
     {
         ((IList)_extendedSet).Clear();
     }
 }
コード例 #2
0
        public void Add(TOuter item)
        {
            if (item == null)
            {
                return;
            }

            if (_extendedSet.Any())
            {
                _extendedSet.Add(item);
                return;
            }

            var inner = _transformIn(item);

            if (inner == null)
            {
                _extendedSet.Add(item);
            }
            else
            {
                _innerSet.Add(inner);
            }
        }