diff options
author | Martin Odersky <odersky@gmail.com> | 2014-04-14 14:42:05 +0200 |
---|---|---|
committer | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2014-04-15 11:07:36 +0200 |
commit | 0aa3f4cecfff4a2c883a5b814c551f399dc425e1 (patch) | |
tree | bd625a14416766af69547e9198a8610999013cef /src/dotty/tools/dotc/core/Definitions.scala | |
parent | 2a681ecf7236fb2fdc128f7ab9d5e94d7889fc75 (diff) | |
download | dotty-0aa3f4cecfff4a2c883a5b814c551f399dc425e1.tar.gz dotty-0aa3f4cecfff4a2c883a5b814c551f399dc425e1.tar.bz2 dotty-0aa3f4cecfff4a2c883a5b814c551f399dc425e1.zip |
New phase: Nullarify
Eliminates ExprTypes and PolyTypes over value types.
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 53e8b4d2c..f1c69027e 100644 --- a/src/dotty/tools/dotc/core/Definitions.scala +++ b/src/dotty/tools/dotc/core/Definitions.scala @@ -341,6 +341,8 @@ class Definitions { lazy val AbstractFunctionClass = mkArityArray("scala.runtime.AbstractFunction", MaxFunctionArity, 0) lazy val FunctionClass = mkArityArray("scala.Function", MaxFunctionArity, 0) + lazy val Function0_apply = FunctionClass(0).requiredMethod(nme.apply) + lazy val TupleClass = mkArityArray("scala.Tuple", MaxTupleArity, 2) lazy val ProductNClass = mkArityArray("scala.Product", MaxTupleArity, 2) @@ -357,6 +359,7 @@ class Definitions { lazy val asInstanceOfMethods = Set[Symbol](Any_asInstanceOf, Object_asInstanceOf) lazy val isInstanceOfMethods = Set[Symbol](Any_isInstanceOf, Object_isInstanceOf) + lazy val typeTestsOrCasts = asInstanceOfMethods ++ isInstanceOfMethods lazy val RootImports = List[Symbol](JavaLangPackageVal, ScalaPackageVal, ScalaPredefModule, DottyPredefModule) @@ -440,7 +443,7 @@ class Definitions { LongClass, FloatClass, DoubleClass) - + lazy val ScalaValueClasses: collection.Set[Symbol] = ScalaNumericValueClasses + UnitClass + BooleanClass lazy val ScalaBoxedClasses = ScalaValueClasses map boxedClass |