summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/ast/parser/TreeBuilder.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2006-05-16 20:34:26 +0000
committerMartin Odersky <odersky@gmail.com>2006-05-16 20:34:26 +0000
commit8ab0305de71c63d8dcdba023fdb305202da57edd (patch)
tree8a4ac8b0939347008c0be1042468d05a32994f17 /src/compiler/scala/tools/nsc/ast/parser/TreeBuilder.scala
parent5c11f952af7017a7d45b56f136a903e128aefcca (diff)
downloadscala-8ab0305de71c63d8dcdba023fdb305202da57edd.tar.gz
scala-8ab0305de71c63d8dcdba023fdb305202da57edd.tar.bz2
scala-8ab0305de71c63d8dcdba023fdb305202da57edd.zip
bug fixes
Diffstat (limited to 'src/compiler/scala/tools/nsc/ast/parser/TreeBuilder.scala')
-rw-r--r--src/compiler/scala/tools/nsc/ast/parser/TreeBuilder.scala17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/parser/TreeBuilder.scala b/src/compiler/scala/tools/nsc/ast/parser/TreeBuilder.scala
index b00a4875ab..db8b695b39 100644
--- a/src/compiler/scala/tools/nsc/ast/parser/TreeBuilder.scala
+++ b/src/compiler/scala/tools/nsc/ast/parser/TreeBuilder.scala
@@ -18,6 +18,15 @@ abstract class TreeBuilder {
def freshName(): Name = freshName("x$");
+ def scalaDot(name: Name): Tree =
+ Select(Ident(nme.scala_) setSymbol definitions.ScalaPackage, name)
+ def scalaAnyRefConstr: Tree =
+ scalaDot(nme.AnyRef.toTypeName);
+ def scalaScalaObjectConstr: Tree =
+ scalaDot(nme.ScalaObject.toTypeName);
+ def caseClassConstr: Tree =
+ scalaDot(nme.CaseClass.toTypeName);
+
/** Convert all occurrences of (lower-case) variables in a pattern as follows:
* x becomes x @ _
* x: T becomes x @ (_: T)
@@ -63,9 +72,7 @@ abstract class TreeBuilder {
private def makeTuple(trees: List[Tree], isType: boolean): Tree = {
val tupString = "Tuple" + trees.length;
- Apply(
- Select(Ident(nme.scala_), if (isType) newTypeName(tupString) else newTermName(tupString)),
- trees)
+ Apply(scalaDot(if (isType) newTypeName(tupString) else newTermName(tupString)), trees)
}
private def makeTupleTerm(trees: List[Tree]): Tree = trees match {
@@ -369,9 +376,7 @@ abstract class TreeBuilder {
/** Create a tree representing a function type */
def makeFunctionTypeTree(argtpes: List[Tree], restpe: Tree): Tree =
- AppliedTypeTree(
- Select(Ident(nme.scala_), newTypeName("Function" + argtpes.length)),
- argtpes ::: List(restpe));
+ AppliedTypeTree(scalaDot(newTypeName("Function" + argtpes.length)), argtpes ::: List(restpe))
/** Append implicit view section if for `implicitViews' if nonempty */
def addImplicitViews(owner: Name, vparamss: List[List[ValDef]], implicitViews: List[Tree]): List[List[ValDef]] = {