diff options
author | Simon Ochsenreither <simon@ochsenreither.de> | 2013-06-19 03:37:49 +0200 |
---|---|---|
committer | Simon Ochsenreither <simon@ochsenreither.de> | 2013-06-19 16:54:56 +0200 |
commit | f94d86ed9e27c57c5996dbb022b350d32fa6698f (patch) | |
tree | b53e79f04f9466a589098d6fbf85f57315e7d4f3 /src/compiler/scala/tools/nsc/util | |
parent | 70a93f52c3efafe604d6547b335cc361deff4f29 (diff) | |
download | scala-f94d86ed9e27c57c5996dbb022b350d32fa6698f.tar.gz scala-f94d86ed9e27c57c5996dbb022b350d32fa6698f.tar.bz2 scala-f94d86ed9e27c57c5996dbb022b350d32fa6698f.zip |
SI-7592 Replace s.t.n.u.TreeSet with s.c.m.TreeSet
This means
- migrating usages from the compiler-specific implementation to the
one in the standard library
- removing the now unused compiler-specific implementation
Diffstat (limited to 'src/compiler/scala/tools/nsc/util')
-rw-r--r-- | src/compiler/scala/tools/nsc/util/TreeSet.scala | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/src/compiler/scala/tools/nsc/util/TreeSet.scala b/src/compiler/scala/tools/nsc/util/TreeSet.scala deleted file mode 100644 index d2e9238e8f..0000000000 --- a/src/compiler/scala/tools/nsc/util/TreeSet.scala +++ /dev/null @@ -1,64 +0,0 @@ -/* NSC -- new Scala compiler - * Copyright 2005-2013 LAMP/EPFL - * @author Martin Odersky - */ - -package scala.tools.nsc -package util - -/** Sets implemented as binary trees. - * - * @author Martin Odersky - * @version 1.0 - */ -class TreeSet[T >: Null <: AnyRef](less: (T, T) => Boolean) extends Set[T] { - - private class Tree(val elem: T) { - var l: Tree = null - var r: Tree = null - } - - private var tree: Tree = null - - def findEntry(x: T): T = { - def find(t: Tree): T = { - if (t eq null) null - else if (less(x, t.elem)) find(t.l) - else if (less(t.elem, x)) find(t.r) - else t.elem - } - find(tree) - } - - def addEntry(x: T) { - def add(t: Tree): Tree = { - if (t eq null) new Tree(x) - else if (less(x, t.elem)) { t.l = add(t.l); t } - else if (less(t.elem, x)) { t.r = add(t.r); t } - else t - } - tree = add(tree) - } - - def iterator = toList.iterator - - override def foreach[U](f: T => U) { - def loop(t: Tree) { - if (t ne null) { - loop(t.l) - f(t.elem) - loop(t.r) - } - } - loop(tree) - } - override def toList = { - val xs = scala.collection.mutable.ListBuffer[T]() - foreach(xs += _) - xs.toList - } - - override def toString(): String = { - if (tree eq null) "<empty>" else "(..." + tree.elem + "...)" - } -} |