diff options
author | Paul Phillips <paulp@improving.org> | 2010-01-31 16:59:19 +0000 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2010-01-31 16:59:19 +0000 |
commit | e73348dc9d891efc7c9bccf08d1d1648fb05d941 (patch) | |
tree | 21ec0216f68318cfdd1c146add71ae7e97bc5244 | |
parent | 1c8ab3a6ed943410314029387ce71541e1b96b58 (diff) | |
download | scala-e73348dc9d891efc7c9bccf08d1d1648fb05d941.tar.gz scala-e73348dc9d891efc7c9bccf08d1d1648fb05d941.tar.bz2 scala-e73348dc9d891efc7c9bccf08d1d1648fb05d941.zip |
Solidified the logic of stringOf for repl resul...
Solidified the logic of stringOf for repl results printing. Closes #726.
Review by community.
-rw-r--r-- | src/library/scala/runtime/ScalaRunTime.scala | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/library/scala/runtime/ScalaRunTime.scala b/src/library/scala/runtime/ScalaRunTime.scala index 2f6ffb5535..fa471fe3c2 100644 --- a/src/library/scala/runtime/ScalaRunTime.scala +++ b/src/library/scala/runtime/ScalaRunTime.scala @@ -13,7 +13,7 @@ package scala.runtime import scala.reflect.ClassManifest import scala.collection.Seq -import scala.collection.mutable._ +import scala.collection.mutable.WrappedArray import scala.collection.immutable.{ List, Stream, Nil, :: } import scala.util.control.ControlException @@ -186,12 +186,10 @@ object ScalaRunTime { * @return a string representation of <code>arg</code> * */ - def stringOf(arg : Any): String = arg match { - case null => "null" - case arg: AnyRef if isArray(arg) => - val d: collection.IndexedSeq[Any] = WrappedArray.make(arg).deep - d.toString - case arg: WrappedArray[_] => arg.deep.toString - case arg => arg.toString + def stringOf(arg: Any): String = arg match { + case null => "null" + case x: AnyRef if isArray(x) => WrappedArray make x map stringOf mkString ("Array(", ", ", ")") + case x: Traversable[_] => x map stringOf mkString (x.stringPrefix + "(", ", ", ")") + case x => x toString } } |