diff options
author | paltherr <paltherr@epfl.ch> | 2004-03-06 14:44:20 +0000 |
---|---|---|
committer | paltherr <paltherr@epfl.ch> | 2004-03-06 14:44:20 +0000 |
commit | 45df364c3beed61dbea70b1e1e1cc8420968fa66 (patch) | |
tree | d90b934302b461c806a1e072990f2b25eb9aac88 /sources/scalac/symtab | |
parent | 46e374a5c070305dd8d0fd6fb4f423406d84d6bd (diff) | |
download | scala-45df364c3beed61dbea70b1e1e1cc8420968fa66.tar.gz scala-45df364c3beed61dbea70b1e1e1cc8420968fa66.tar.bz2 scala-45df364c3beed61dbea70b1e1e1cc8420968fa66.zip |
- Removed alias scala.String
- Renamed in Definitions: OBJECT_CLASS into SCALAOBJECT_CLASS
- Renamed in Definitions: JAVA_<X> into <X> Renamed in Definitions:
- ANYREF_SYNCHRONIZED into OBJECT_SYNCHRONIZED
Diffstat (limited to 'sources/scalac/symtab')
-rw-r--r-- | sources/scalac/symtab/Definitions.java | 92 | ||||
-rw-r--r-- | sources/scalac/symtab/Type.java | 8 | ||||
-rw-r--r-- | sources/scalac/symtab/classfile/CLRClassParser.java | 4 | ||||
-rw-r--r-- | sources/scalac/symtab/classfile/JavaTypeCreator.java | 10 |
4 files changed, 51 insertions, 63 deletions
diff --git a/sources/scalac/symtab/Definitions.java b/sources/scalac/symtab/Definitions.java index 505c6b14f2..b418116b6b 100644 --- a/sources/scalac/symtab/Definitions.java +++ b/sources/scalac/symtab/Definitions.java @@ -64,16 +64,16 @@ public class Definitions { // Public Fields & Methods - Java classes /** The java.lang.Object class */ - public final Symbol JAVA_OBJECT_CLASS; - public final Type JAVA_OBJECT_TYPE() {return JAVA_OBJECT_CLASS.type();} + public final Symbol OBJECT_CLASS; + public final Type OBJECT_TYPE() {return OBJECT_CLASS.type();} /** The java.lang.String class */ - public final Symbol JAVA_STRING_CLASS; - public final Type JAVA_STRING_TYPE() {return JAVA_STRING_CLASS.type();} + public final Symbol STRING_CLASS; + public final Type STRING_TYPE() {return STRING_CLASS.type();} /** The java.lang.Throwable class */ - public final Symbol JAVA_THROWABLE_CLASS; - public final Type JAVA_THROWABLE_TYPE() {return JAVA_THROWABLE_CLASS.type();} + public final Symbol THROWABLE_CLASS; + public final Type THROWABLE_TYPE() {return THROWABLE_CLASS.type();} //######################################################################## // Public Fields & Methods - Scala value classes @@ -135,13 +135,9 @@ public class Definitions { //######################################################################## // Public Fields & Methods - Scala reference classes - /** The scala.Object class */ - public final Symbol OBJECT_CLASS; - public final Type OBJECT_TYPE() {return OBJECT_CLASS.type();} - - /** The scala.String class */ - public final Symbol STRING_CLASS; - public final Type STRING_TYPE() {return STRING_CLASS.type();} + /** The scala.ScalaObject class */ + public final Symbol SCALAOBJECT_CLASS; + public final Type SCALAOBJECT_TYPE() {return SCALAOBJECT_CLASS.type();} /** The scala.Ref class */ public final Symbol REF_CLASS; @@ -246,17 +242,17 @@ public class Definitions { public final Symbol ANY_AS; public final Symbol ANY_MATCH; - /** Some scala.AnyRef methods */ - public final Symbol ANYREF_SYNCHRONIZED; - //######################################################################## // Public Fields & Methods - Java class methods + /** Some java.lang.Object methods */ + public final Symbol OBJECT_SYNCHRONIZED; + /** Some java.lang.String methods */ - public final Symbol JAVA_STRING_PLUS; + public final Symbol STRING_PLUS; /** Some java.lang.Throwable methods */ - public final Symbol JAVA_THROWABLE_THROW; + public final Symbol THROWABLE_THROW; //######################################################################## // Public Fields & Methods - Scala value class methods @@ -285,13 +281,13 @@ public class Definitions { //######################################################################## // Public Fields & Methods - Scala reference class methods - /** Some scala.Object methods */ - private Symbol OBJECT_TAG; + /** Some scala.ScalaObject methods */ + private Symbol SCALAOBJECT_TAG; - public Symbol OBJECT_TAG() { - if (OBJECT_TAG == null) - OBJECT_TAG = loadTerm(OBJECT_CLASS, Names.tag); - return OBJECT_TAG; + public Symbol SCALAOBJECT_TAG() { + if (SCALAOBJECT_TAG == null) + SCALAOBJECT_TAG = loadTerm(SCALAOBJECT_CLASS, Names.tag); + return SCALAOBJECT_TAG; } /** Some scala.Ref methods */ @@ -482,9 +478,9 @@ public class Definitions { ALL_CLASS = newClass(SCALA_CLASS, Names.All, 0); // the java classes - JAVA_OBJECT_CLASS = getClass(Names.java_lang_Object); - JAVA_THROWABLE_CLASS = getClass(Names.java_lang_Throwable); - JAVA_STRING_CLASS = getClass(Names.java_lang_String); + OBJECT_CLASS = getClass(Names.java_lang_Object); + THROWABLE_CLASS = getClass(Names.java_lang_Throwable); + STRING_CLASS = getClass(Names.java_lang_String); // the scala value classes UNIT_CLASS = getClass(Names.scala_Unit); @@ -498,8 +494,7 @@ public class Definitions { DOUBLE_CLASS = getClass(Names.scala_Double); // the scala reference classes - OBJECT_CLASS = getClass(Names.scala_ScalaObject); - STRING_CLASS = newAlias(SCALA_CLASS, Names.String, 0); + SCALAOBJECT_CLASS = getClass(Names.scala_ScalaObject); REF_CLASS = getClass(Names.scala_Ref); for (int i = 1; i < TUPLE_COUNT; i++) { TUPLE_CLASS[i] = getClass(Names.scala_Tuple(i)); @@ -521,7 +516,7 @@ public class Definitions { // initialize generated classes and aliases initClass(ANY_CLASS, Type.EMPTY_ARRAY); - initAlias(ANYREF_CLASS, JAVA_OBJECT_TYPE()); + initAlias(ANYREF_CLASS, OBJECT_TYPE()); initClass(ALLREF_CLASS, new Type[]{ANYREF_TYPE()}); initClass(ALL_CLASS, new Type[]{ANY_TYPE()}); @@ -538,9 +533,6 @@ public class Definitions { ARRAY_TYPE = newTypeSymbol(Names.Array , Type.appliedType(ARRAY_CLASS.type(), new Type[]{ANYREF_TYPE()})); - // initialize generated classes and aliases - initAlias(STRING_CLASS, JAVA_STRING_TYPE()); - // add members to scala.Any ANY_EQ = newTerm(ANY_CLASS, Names.eq , 0); ANY_EQEQ = newTerm(ANY_CLASS, Names.EQEQ , Modifiers.FINAL); @@ -581,31 +573,28 @@ public class Definitions { ANY_MATCH_VPARAMS, ANY_MATCH_TPARAMS[1].type()))); - // add members to scala.AnyREF - ANYREF_SYNCHRONIZED = - newTerm(ANYREF_CLASS, Names.synchronized_, Modifiers.FINAL); + // add members to java.lang.Object + OBJECT_SYNCHRONIZED = + newTerm(OBJECT_CLASS, Names.synchronized_, Modifiers.FINAL); - Symbol ANYREF_SYNCHRONIZED_TPARAM = - newTParam(ANYREF_SYNCHRONIZED,0,ANY_TYPE()); - Symbol ANYREF_SYNCHRONIZED_VPARAM = - newVParam(ANYREF_SYNCHRONIZED,0,ANYREF_SYNCHRONIZED_TPARAM.type()); - ANYREF_SYNCHRONIZED.setInfo( + Symbol OBJECT_SYNCHRONIZED_TPARAM = + newTParam(OBJECT_SYNCHRONIZED,0,ANY_TYPE()); + Symbol OBJECT_SYNCHRONIZED_VPARAM = + newVParam(OBJECT_SYNCHRONIZED,0,OBJECT_SYNCHRONIZED_TPARAM.type()); + OBJECT_SYNCHRONIZED.setInfo( Type.PolyType( - new Symbol[] {ANYREF_SYNCHRONIZED_TPARAM}, + new Symbol[] {OBJECT_SYNCHRONIZED_TPARAM}, Type.MethodType( - new Symbol[] {ANYREF_SYNCHRONIZED_VPARAM}, - ANYREF_SYNCHRONIZED_TPARAM.type()))); + new Symbol[] {OBJECT_SYNCHRONIZED_VPARAM}, + OBJECT_SYNCHRONIZED_TPARAM.type()))); // add members to java.lang.String - JAVA_STRING_PLUS = - newTerm(JAVA_STRING_CLASS, Names.PLUS, Modifiers.FINAL); - initMethod(JAVA_STRING_PLUS, new Type[]{ANY_TYPE()}, STRING_TYPE()); + STRING_PLUS = newTerm(STRING_CLASS, Names.PLUS, Modifiers.FINAL); + initMethod(STRING_PLUS, new Type[]{ANY_TYPE()}, STRING_TYPE()); // add members to java.lang.Throwable - JAVA_THROWABLE_THROW = - newTerm(JAVA_THROWABLE_CLASS, Names.throw_, Modifiers.FINAL); - JAVA_THROWABLE_THROW.setInfo( - Type.PolyType(Symbol.EMPTY_ARRAY, ALL_TYPE())); + THROWABLE_THROW =newTerm(THROWABLE_CLASS,Names.throw_,Modifiers.FINAL); + THROWABLE_THROW.setInfo(Type.PolyType(Symbol.EMPTY_ARRAY, ALL_TYPE())); // create global values PATTERN_WILDCARD = new TermSymbol( @@ -688,7 +677,6 @@ public class Definitions { /** Creates a new term */ private Symbol newTerm(Symbol owner, Name name, int flags) { - if (owner.isTypeAlias()) owner = owner.type().unalias().symbol(); assert owner.isClassType(): Debug.show(owner) + " -- " + name; Symbol term = new TermSymbol(Position.NOPOS, name, owner, flags); owner.members().enterOrOverload(term); diff --git a/sources/scalac/symtab/Type.java b/sources/scalac/symtab/Type.java index 6e89ef88d8..d1df9d6e35 100644 --- a/sources/scalac/symtab/Type.java +++ b/sources/scalac/symtab/Type.java @@ -719,7 +719,7 @@ public class Type implements Modifiers, Kinds, TypeTags, EntryTags { Definitions definitions = Global.instance.definitions; return members.isEmpty() && parents.length == 2 && - (parents[0].symbol() == definitions.JAVA_OBJECT_CLASS || + (parents[0].symbol() == definitions.OBJECT_CLASS || parents[0].symbol() == definitions.ANYREF_CLASS) && parents[1].isFunctionType(); } @@ -914,7 +914,7 @@ public class Type implements Modifiers, Kinds, TypeTags, EntryTags { } static private Map objToAnyMap = new Map() { public Type apply(Type t) { - if (t.symbol() == Global.instance.definitions.JAVA_OBJECT_CLASS) + if (t.symbol() == Global.instance.definitions.OBJECT_CLASS) return Global.instance.definitions.ANY_TYPE(); else return t; } @@ -2005,7 +2005,7 @@ public class Type implements Modifiers, Kinds, TypeTags, EntryTags { break; case UnboxedArrayType(_): - if (Global.instance.definitions.JAVA_OBJECT_TYPE().isSubType(that)) + if (Global.instance.definitions.OBJECT_TYPE().isSubType(that)) return true; // !!! we should probably also test for Clonable, Serializable, ... } @@ -3082,7 +3082,7 @@ public class Type implements Modifiers, Kinds, TypeTags, EntryTags { case CLASS: Definitions definitions = Global.instance.definitions; if (sym == definitions.UNIT_CLASS) return this; - if (sym == definitions.JAVA_OBJECT_CLASS || + if (sym == definitions.OBJECT_CLASS || sym == definitions.ALL_CLASS || sym == definitions.ALLREF_CLASS) return Type.typeRef(NoPrefix, definitions.ANY_CLASS, EMPTY_ARRAY); diff --git a/sources/scalac/symtab/classfile/CLRClassParser.java b/sources/scalac/symtab/classfile/CLRClassParser.java index 1190da66c5..fb472ad9fd 100644 --- a/sources/scalac/symtab/classfile/CLRClassParser.java +++ b/sources/scalac/symtab/classfile/CLRClassParser.java @@ -286,9 +286,9 @@ public class CLRClassParser extends ClassParser { protected scalac.symtab.Type getCLRType(Type type) { if (type == importer.OBJECT) - return global.definitions.JAVA_OBJECT_TYPE(); + return global.definitions.OBJECT_TYPE(); if (type == importer.STRING) - return global.definitions.JAVA_STRING_TYPE(); + return global.definitions.STRING_TYPE(); if (type == importer.VOID) return make.voidType(); if (type == importer.BOOLEAN) diff --git a/sources/scalac/symtab/classfile/JavaTypeCreator.java b/sources/scalac/symtab/classfile/JavaTypeCreator.java index 57ba860698..1c0036ad1c 100644 --- a/sources/scalac/symtab/classfile/JavaTypeCreator.java +++ b/sources/scalac/symtab/classfile/JavaTypeCreator.java @@ -30,8 +30,8 @@ public class JavaTypeCreator implements JavaTypeFactory { protected final Type BYTE_TYPE; protected final Type BOOLEAN_TYPE; protected final Type UNIT_TYPE; + protected final Type OBJECT_TYPE; protected final Type ARRAY_TYPE; - protected final Type JAVA_OBJECT_TYPE; public JavaTypeCreator(Definitions definitions) { this.definitions = definitions; @@ -45,8 +45,8 @@ public class JavaTypeCreator implements JavaTypeFactory { this.BYTE_TYPE = definitions.BYTE_CLASS.typeConstructor(); this.BOOLEAN_TYPE = definitions.BOOLEAN_CLASS.typeConstructor(); this.UNIT_TYPE = definitions.UNIT_CLASS.typeConstructor(); + this.OBJECT_TYPE = definitions.OBJECT_CLASS.typeConstructor(); this.ARRAY_TYPE = definitions.ARRAY_CLASS.typeConstructor(); - this.JAVA_OBJECT_TYPE =definitions.JAVA_OBJECT_CLASS.typeConstructor(); } public Type anyType() { @@ -111,7 +111,7 @@ public class JavaTypeCreator implements JavaTypeFactory { return new MethodType(args, restpe); } private Type objToAny(Type tp) { - if (tp.isSameAs(JAVA_OBJECT_TYPE)) + if (tp.isSameAs(OBJECT_TYPE)) return ANY_TYPE; else return tp; @@ -144,7 +144,7 @@ public class JavaTypeCreator implements JavaTypeFactory { return AConstant.FLOAT(((Number)value).floatValue()); if (base.symbol() == definitions.DOUBLE_CLASS) return AConstant.DOUBLE(((Number)value).doubleValue()); - if (base.symbol() == definitions.JAVA_STRING_CLASS) + if (base.symbol() == definitions.STRING_CLASS) return AConstant.STRING((String)value); throw Debug.abort("illegal value", value + " - " + base); } @@ -163,7 +163,7 @@ public class JavaTypeCreator implements JavaTypeFactory { else if (value instanceof Double) return doubleType(); else if (value instanceof String) - return definitions.JAVA_STRING_CLASS.typeConstructor(); + return definitions.STRING_CLASS.typeConstructor(); else if (value instanceof Boolean) return booleanType(); else |