public virtual void IntersectWith(IEnumerable <T> other) { CheckArgumentNotNull(other, "other"); RBTree newtree = new RBTree(helper); foreach (T item in other) { var node = tree.Remove(item); if (node != null) { newtree.Intern(item, node); } } tree = newtree; }
public void Dispose() { tree = null; pennants = null; }
internal NodeEnumerator(RBTree tree, Stack <Node> init_pennants) : this(tree) { this.init_pennants = init_pennants; }
internal NodeEnumerator(RBTree tree) : this() { this.tree = tree; version = tree.version; }
public SortedSet(IComparer <T> comparer) { this.helper = NodeHelper.GetHelper(comparer); this.tree = new RBTree(this.helper); }