diff options
author | ilyas <ilyas@epfl.ch> | 2010-04-28 12:29:26 +0000 |
---|---|---|
committer | ilyas <ilyas@epfl.ch> | 2010-04-28 12:29:26 +0000 |
commit | 3db6fcb7bf5aa8183402eab22a97eb867e93b1e0 (patch) | |
tree | a2ca796c273165d234444cdaeaeef7e575feb2e4 /src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSigPrinter.scala | |
parent | 4f5a598284609a094255b08e9887b61417a6ce68 (diff) | |
download | scala-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.scala | 4 |
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) |