diff options
author | Miles Sabin <miles@milessabin.com> | 2008-12-16 13:49:14 +0000 |
---|---|---|
committer | Miles Sabin <miles@milessabin.com> | 2008-12-16 13:49:14 +0000 |
commit | 6d1b4e24a91b085c928f6f9d9e030aa5168b536c (patch) | |
tree | ac0989e7ffcb1d7c13762f4295c7ecd6a2acd1b5 | |
parent | 5936dbccb91f72835d8182776ce365ee55c6d850 (diff) | |
download | scala-6d1b4e24a91b085c928f6f9d9e030aa5168b536c.tar.gz scala-6d1b4e24a91b085c928f6f9d9e030aa5168b536c.tar.bz2 scala-6d1b4e24a91b085c928f6f9d9e030aa5168b536c.zip |
Reverting [16226].
-rwxr-xr-x | src/compiler/scala/tools/nsc/javac/JavaParsers.scala | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/src/compiler/scala/tools/nsc/javac/JavaParsers.scala b/src/compiler/scala/tools/nsc/javac/JavaParsers.scala index 1e0d20da1b..22faecb24f 100755 --- a/src/compiler/scala/tools/nsc/javac/JavaParsers.scala +++ b/src/compiler/scala/tools/nsc/javac/JavaParsers.scala @@ -686,7 +686,7 @@ trait JavaParsers extends JavaScanners { javaLangObject() } val interfaces = interfacesOpt() - val (statics, body) = typeBody(CLASS, name) + val (statics, body) = typeBody(CLASS) addCompanionObject(statics, atPos(pos) { ClassDef(mods, name, tparams, makeTemplate(superclass :: interfaces, body)) }) @@ -704,7 +704,7 @@ trait JavaParsers extends JavaScanners { } else { List(javaLangObject) } - val (statics, body) = typeBody(INTERFACE, name) + val (statics, body) = typeBody(INTERFACE) addCompanionObject(statics, atPos(pos) { ClassDef(mods | Flags.TRAIT | Flags.INTERFACE | Flags.ABSTRACT, name, tparams, @@ -712,14 +712,14 @@ trait JavaParsers extends JavaScanners { }) } - def typeBody(leadingToken: Int, parentName: Name): (List[Tree], List[Tree]) = { + def typeBody(leadingToken: Int): (List[Tree], List[Tree]) = { accept(LBRACE) - val defs = typeBodyDecls(leadingToken, parentName) + val defs = typeBodyDecls(leadingToken) accept(RBRACE) defs } - def typeBodyDecls(parentToken: Int, parentName: Name): (List[Tree], List[Tree]) = { + def typeBodyDecls(parentToken: Int): (List[Tree], List[Tree]) = { val inInterface = definesInterface(parentToken) val statics = new ListBuffer[Tree] val members = new ListBuffer[Tree] @@ -739,18 +739,7 @@ trait JavaParsers extends JavaScanners { members) ++= decls } } - def forwarders(sdef: Tree): List[Tree] = sdef match { - case ClassDef(mods, name, tparams, _) if (parentToken == INTERFACE) => - val tparams1: List[TypeDef] = tparams map (_.duplicate) - var rhs: Tree = Select(Ident(parentName.toTermName), name) - if (!tparams1.isEmpty) rhs = AppliedTypeTree(rhs, tparams1 map (tp => Ident(tp.name))) - List(TypeDef(Modifiers(Flags.PROTECTED), name, tparams1, rhs)) - case _ => - List() - } - val sdefs = statics.toList - val idefs = members.toList ::: (sdefs flatMap forwarders) - (sdefs, idefs) + (statics.toList, members.toList) } def annotationDecl(mods: Modifiers): List[Tree] = { @@ -761,7 +750,7 @@ trait JavaParsers extends JavaScanners { val parents = List(scalaDot(newTypeName("Annotation")), Select(javaLangDot(newTermName("annotation")), newTypeName("Annotation")), scalaDot(newTypeName("ClassfileAnnotation"))) - val (statics, body) = typeBody(AT, name) + val (statics, body) = typeBody(AT) def getValueMethodType(tree: Tree) = tree match { case DefDef(_, nme.value, _, _, tpt, _) => Some(tpt.duplicate) case _ => None @@ -796,7 +785,7 @@ trait JavaParsers extends JavaScanners { val (statics, body) = if (in.token == SEMI) { in.nextToken - typeBodyDecls(ENUM, name) + typeBodyDecls(ENUM) } else { (List(), List()) } |