diff options
author | Martin Odersky <odersky@gmail.com> | 2013-07-25 22:16:07 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2013-07-25 22:22:42 +0200 |
commit | cf65e84a6da2a151286a36297c057b72545960c8 (patch) | |
tree | 55f3d8a30f5751602836d62d0b1a4ae6269b64bd /src/dotty/tools/dotc/core/Definitions.scala | |
parent | 0a86c0ae8668070f62df25c7a4ba12369f23b216 (diff) | |
download | dotty-cf65e84a6da2a151286a36297c057b72545960c8.tar.gz dotty-cf65e84a6da2a151286a36297c057b72545960c8.tar.bz2 dotty-cf65e84a6da2a151286a36297c057b72545960c8.zip |
More typer logic, in particular dealing with variants of applications
Diffstat (limited to 'src/dotty/tools/dotc/core/Definitions.scala')
-rw-r--r-- | src/dotty/tools/dotc/core/Definitions.scala | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/core/Definitions.scala b/src/dotty/tools/dotc/core/Definitions.scala index 41d032f7a..bde325897 100644 --- a/src/dotty/tools/dotc/core/Definitions.scala +++ b/src/dotty/tools/dotc/core/Definitions.scala @@ -181,7 +181,7 @@ class Definitions(implicit ctx: Context) { lazy val RepeatedParamAlias = newAliasType(tpnme.REPEATED_PARAM_CLASS, SeqType) lazy val JavaRepeatedParamAlias = newAliasType(tpnme.JAVA_REPEATED_PARAM_CLASS, ArrayType) - // fundamental reference classes + // fundamental classes lazy val StringClass = requiredClass("java.lang.String") lazy val String_+ = newMethod(StringClass, nme.raw.PLUS, methOfAny(StringType), Final) @@ -202,6 +202,7 @@ class Definitions(implicit ctx: Context) { lazy val ThrowableClass = requiredClass("java.lang.Throwable") lazy val JavaSerializableClass = requiredClass("java.lang.Serializable") lazy val ComparableClass = requiredClass("java.lang.Comparable") + lazy val ProductClass = requiredClass("scala.Product") // Annotation base classes lazy val AnnotationClass = requiredClass("scala.annotation.Annotation") @@ -286,9 +287,11 @@ class Definitions(implicit ctx: Context) { lazy val FunctionClass = mkArityArray("Function", MaxFunctionArity, 0) lazy val TupleClass = mkArityArray("Tuple", MaxTupleArity, 2) + lazy val ProductNClass = mkArityArray("Product", MaxTupleArity, 2) lazy val FunctionClasses: Set[Symbol] = FunctionClass.toSet lazy val TupleClasses: Set[Symbol] = TupleClass.toSet + lazy val ProductClasses: Set[Symbol] = ProductNClass.toSet lazy val RepeatedParamAliases: Set[Symbol] = Set(RepeatedParamAlias, JavaRepeatedParamAlias) |