summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sources/scalac/symtab/Definitions.java53
-rw-r--r--sources/scalac/util/Names.java13
2 files changed, 54 insertions, 12 deletions
diff --git a/sources/scalac/symtab/Definitions.java b/sources/scalac/symtab/Definitions.java
index 34a6f72bbc..d4260c2b47 100644
--- a/sources/scalac/symtab/Definitions.java
+++ b/sources/scalac/symtab/Definitions.java
@@ -223,6 +223,7 @@ public class Definitions {
}
public final Symbol JAVACLASSTYPE_CLASS;
+ public final Symbol JAVAREFARRAYTYPE_CLASS;
public final Symbol SCALACLASSTYPE_CLASS;
public final Type SCALACLASSTYPE_TYPE() {
@@ -237,12 +238,6 @@ public class Definitions {
}
public final Symbol COMPOUNDTYPE_CLASS;
- public final Symbol METHODTYPE_CLASS;
-
- public final Symbol REFINEMENT_CLASS;
- public final Type REFINEMENT_TYPE() {
- return REFINEMENT_CLASS.staticType();
- }
/** The scala.Predef module */
public final Symbol PREDEF;
@@ -622,6 +617,41 @@ public class Definitions {
return RTT_BOOLEAN;
}
+ private Symbol RTT_UNIT;
+ public Symbol RTT_UNIT() {
+ if (RTT_UNIT == null)
+ RTT_UNIT = loadTerm(TYPE_CLASS.linkedModule().moduleClass(), Names.Unit);
+ return RTT_UNIT;
+ }
+
+ private Symbol RTT_ANY;
+ public Symbol RTT_ANY() {
+ if (RTT_ANY == null)
+ RTT_ANY = loadTerm(TYPE_CLASS.linkedModule().moduleClass(), Names.Any);
+ return RTT_ANY;
+ }
+
+ private Symbol RTT_ANYVAL;
+ public Symbol RTT_ANYVAL() {
+ if (RTT_ANYVAL == null)
+ RTT_ANYVAL = loadTerm(TYPE_CLASS.linkedModule().moduleClass(), Names.AnyVal);
+ return RTT_ANYVAL;
+ }
+
+ private Symbol RTT_ALLREF;
+ public Symbol RTT_ALLREF() {
+ if (RTT_ALLREF == null)
+ RTT_ALLREF = loadTerm(TYPE_CLASS.linkedModule().moduleClass(), Names.AllRef);
+ return RTT_ALLREF;
+ }
+
+ private Symbol RTT_ALL;
+ public Symbol RTT_ALL() {
+ if (RTT_ALL == null)
+ RTT_ALL = loadTerm(TYPE_CLASS.linkedModule().moduleClass(), Names.All);
+ return RTT_ALL;
+ }
+
private Symbol TYPECONSTRUCTOR_GETINSTANTIATION;
public Symbol TYPECONSTRUCTOR_GETINSTANTIATION() {
if (TYPECONSTRUCTOR_GETINSTANTIATION == null) {
@@ -639,6 +669,14 @@ public class Definitions {
return TYPECONSTRUCTOR_INSTANTIATE;
}
+ private Symbol SCALACLASSTYPE_SETPARENTS;
+ public Symbol SCALACLASSTYPE_SETPARENTS() {
+ if (SCALACLASSTYPE_SETPARENTS == null)
+ SCALACLASSTYPE_SETPARENTS =
+ loadTerm(SCALACLASSTYPE_CLASS, Names.setParents);
+ return SCALACLASSTYPE_SETPARENTS;
+ }
+
//########################################################################
// Public Fields - Global values
@@ -724,12 +762,11 @@ public class Definitions {
CLASSTYPE_CLASS = getJVMClass("scala.runtime.types.ClassType");
JAVACLASSTYPE_CLASS = getJVMClass("scala.runtime.types.JavaClassType");
+ JAVAREFARRAYTYPE_CLASS = getJVMClass("scala.runtime.types.JavaRefArrayType");
SCALACLASSTYPE_CLASS = getJVMClass("scala.runtime.types.ScalaClassType");
SINGLETYPE_CLASS = getJVMClass("scala.runtime.types.SingleType");
TYPECONSTRUCTOR_CLASS = getJVMClass("scala.runtime.types.TypeConstructor");
COMPOUNDTYPE_CLASS = getJVMClass("scala.runtime.types.CompoundType");
- METHODTYPE_CLASS = getJVMClass("scala.runtime.types.MethodType");
- REFINEMENT_CLASS = getJVMClass("scala.runtime.types.Refinement");
PREDEF = getModule("scala.Predef");
CONSOLE = getModule("scala.Console");
diff --git a/sources/scalac/util/Names.java b/sources/scalac/util/Names.java
index 1017950ba8..ed4810d98d 100644
--- a/sources/scalac/util/Names.java
+++ b/sources/scalac/util/Names.java
@@ -74,12 +74,16 @@ public class Names {
return Name.fromString(TYPE_PREFIX + sym.name);
}
- public static Name INSTANTIATE(Symbol sym) {
- return Name.fromString(INSTANTIATE_PREFIX + sym.name);
+ public static Name INSTANTIATE(Symbol sym, boolean isStatic) {
+ return Name.fromString(INSTANTIATE_PREFIX
+ + sym.name
+ + (isStatic ? "$" : ""));
}
- public static Name TYPECONSTRUCTOR(Symbol sym) {
- return Name.fromString(TYPECONSTRUCTOR_PREFIX + sym.name);
+ public static Name TYPECONSTRUCTOR(Symbol sym, boolean isStatic) {
+ return Name.fromString(TYPECONSTRUCTOR_PREFIX
+ + sym.name
+ + (isStatic ? "$" : ""));
}
public static final Name ERROR = Name.fromString("<error>");
@@ -199,6 +203,7 @@ public class Names {
public static final Name report = Name.fromString("report");
public static final Name runtime = Name.fromString("runtime");
public static final Name scala = Name.fromString("scala");
+ public static final Name setParents = Name.fromString("setParents");
public static final Name synchronized_ = Name.fromString("synchronized");
public static final Name tag = Name.fromString("$tag");
public static final Name tail = Name.fromString("tail");