aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/Definitions.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2013-07-25 22:16:07 +0200
committerMartin Odersky <odersky@gmail.com>2013-07-25 22:22:42 +0200
commitcf65e84a6da2a151286a36297c057b72545960c8 (patch)
tree55f3d8a30f5751602836d62d0b1a4ae6269b64bd /src/dotty/tools/dotc/core/Definitions.scala
parent0a86c0ae8668070f62df25c7a4ba12369f23b216 (diff)
downloaddotty-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.scala5
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)