summaryrefslogtreecommitdiff
path: root/src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala
diff options
context:
space:
mode:
authorilyas <ilyas@epfl.ch>2010-04-28 12:29:26 +0000
committerilyas <ilyas@epfl.ch>2010-04-28 12:29:26 +0000
commit3db6fcb7bf5aa8183402eab22a97eb867e93b1e0 (patch)
treea2ca796c273165d234444cdaeaeef7e575feb2e4 /src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala
parent4f5a598284609a094255b08e9887b61417a6ce68 (diff)
downloadscala-3db6fcb7bf5aa8183402eab22a97eb867e93b1e0.tar.gz
scala-3db6fcb7bf5aa8183402eab22a97eb867e93b1e0.tar.bz2
scala-3db6fcb7bf5aa8183402eab22a97eb867e93b1e0.zip
scalap: signature for case classes fixed
Diffstat (limited to 'src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala')
-rw-r--r--src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala b/src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala
index 3cb70ec04e..354e3131e8 100644
--- a/src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala
+++ b/src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala
@@ -17,6 +17,7 @@ import java.util.regex.Pattern
import scala.tools.scalap.scalax.util.StringUtil
import reflect.NameTransformer
+import java.lang.String
class ScalaSigPrinter(stream: PrintStream, printPrivates: Boolean) {
import stream._
@@ -130,6 +131,7 @@ class ScalaSigPrinter(stream: PrintStream, printPrivates: Boolean) {
val it = c.infoType
val classType = it match {
case PolyType(typeRef, symbols) => PolyTypeWithCons(typeRef, symbols, defaultConstructor)
+ case ClassInfoType(a, b) if c.isCase => ClassInfoTypeWithCons(a, b, defaultConstructor)
case _ => it
}
printType(classType)
@@ -368,6 +370,8 @@ class ScalaSigPrinter(stream: PrintStream, printPrivates: Boolean) {
}
case RefinedType(classSym, typeRefs) => sep + typeRefs.map(toString).mkString("", " with ", "")
case ClassInfoType(symbol, typeRefs) => sep + typeRefs.map(toString).mkString(" extends ", " with ", "")
+ case ClassInfoTypeWithCons(symbol, typeRefs, cons) => sep + typeRefs.map(toString).
+ mkString(cons + " extends ", " with ", "")
case ImplicitMethodType(resultType, _) => toString(resultType, sep)
case MethodType(resultType, _) => toString(resultType, sep)