aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2012-11-24 09:49:48 +0100
committerJason Zaugg <jzaugg@gmail.com>2012-11-24 09:49:48 +0100
commita3ea46c3da6596013d8e6ea8b84839c59e92e781 (patch)
tree8efd166e25f17baa5c5d1f33094ad60af485d316
parent49c169e123dc5e90bcc5f23f63f1415c645603d5 (diff)
downloadscala-async-a3ea46c3da6596013d8e6ea8b84839c59e92e781.tar.gz
scala-async-a3ea46c3da6596013d8e6ea8b84839c59e92e781.tar.bz2
scala-async-a3ea46c3da6596013d8e6ea8b84839c59e92e781.zip
Refine tracing of ANF.
- show the AST on one line.
-rw-r--r--src/main/scala/scala/async/AnfTransform.scala5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main/scala/scala/async/AnfTransform.scala b/src/main/scala/scala/async/AnfTransform.scala
index 7d19da2..b45c5bb 100644
--- a/src/main/scala/scala/async/AnfTransform.scala
+++ b/src/main/scala/scala/async/AnfTransform.scala
@@ -76,10 +76,11 @@ private[async] final case class AnfTransform[C <: Context](override val c: C) ex
def indentString = " " * indent
def apply[T](prefix: String, args: Any)(t: => T): T = {
indent += 1
+ def oneLine(s: Any) = s.toString.replaceAll("""\n""", "\\\\n").take(127)
try {
- AsyncUtils.trace(s"${indentString}$prefix($args)")
+ AsyncUtils.trace(s"${indentString}$prefix(${oneLine(args)})")
val result = t
- AsyncUtils.trace(s"${indentString}= $result")
+ AsyncUtils.trace(s"${indentString}= ${oneLine(result)}")
result
} finally {
indent -= 1