summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/symtab/SymbolTrackers.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2011-05-01 05:10:58 +0000
committerPaul Phillips <paulp@improving.org>2011-05-01 05:10:58 +0000
commit269ea9ab579f0e7ff14df31caa0981627f051958 (patch)
tree962682a6522e59ee96fb66724d4a48cf24069868 /src/compiler/scala/tools/nsc/symtab/SymbolTrackers.scala
parenta02b2daa2a46661a3c108d26c738b4dbb836ea4d (diff)
downloadscala-269ea9ab579f0e7ff14df31caa0981627f051958.tar.gz
scala-269ea9ab579f0e7ff14df31caa0981627f051958.tar.bz2
scala-269ea9ab579f0e7ff14df31caa0981627f051958.zip
Since I don't want to commit anything "interest...
Since I don't want to commit anything "interesting" until we ship 2.9, a few uninteresting cleanups involving how types are printed, getting some debugging code in shape to prepare for the long winter ahead, etc. No review.
Diffstat (limited to 'src/compiler/scala/tools/nsc/symtab/SymbolTrackers.scala')
-rw-r--r--src/compiler/scala/tools/nsc/symtab/SymbolTrackers.scala10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/compiler/scala/tools/nsc/symtab/SymbolTrackers.scala b/src/compiler/scala/tools/nsc/symtab/SymbolTrackers.scala
index 870787a9ea..1f32355bf7 100644
--- a/src/compiler/scala/tools/nsc/symtab/SymbolTrackers.scala
+++ b/src/compiler/scala/tools/nsc/symtab/SymbolTrackers.scala
@@ -131,7 +131,11 @@ trait SymbolTrackers {
else " (" + Flags.flagsToString(masked) + ")"
}
def symString(sym: Symbol) = (
- sym + changedOwnerString + flagSummaryString
+ if (settings.debug.value && sym.hasRawInfo && sym.rawInfo.isComplete) {
+ val s = sym.defString take 240
+ if (s.length == 240) s + "..." else s
+ }
+ else sym + changedOwnerString + flagSummaryString
)
def flatten = children.foldLeft(Set(root))(_ ++ _.flatten)
@@ -173,7 +177,7 @@ trait SymbolTrackers {
prevFlags = current map (s => (s, (s.flags & flagsMask))) toMap;
history = change :: history
}
- def show(): String = {
+ def show(label: String): String = {
val hierarchy = Node(current)
val Change(added, removed, symMap, owners, flags) = history.head
def detailString(sym: Symbol) = {
@@ -194,7 +198,7 @@ trait SymbolTrackers {
"" + hierarchy + (
if (removed.isEmpty) ""
- else "\n\n!!! %s symbols vanished:\n".format(removed.size) + removedString
+ else "\n\n!!! " + label + ", " + removed.size + " symbols vanished:\n" + removedString
)
}
}