aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/Definitions.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2013-01-06 21:08:23 +0100
committerMartin Odersky <odersky@gmail.com>2013-01-06 21:08:23 +0100
commite963bb4a88b9abff796e3616100d0da9b846739a (patch)
treec0bafa6f4fbf05d6ae60fcc5cc1e18885b2739af /src/dotty/tools/dotc/core/Definitions.scala
parent950ecd092b442f8e8ea2eb9e21f3eedfd3d41b80 (diff)
downloaddotty-e963bb4a88b9abff796e3616100d0da9b846739a.tar.gz
dotty-e963bb4a88b9abff796e3616100d0da9b846739a.tar.bz2
dotty-e963bb4a88b9abff796e3616100d0da9b846739a.zip
Fleshed out Type operations
Diffstat (limited to 'src/dotty/tools/dotc/core/Definitions.scala')
-rw-r--r--src/dotty/tools/dotc/core/Definitions.scala10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/dotty/tools/dotc/core/Definitions.scala b/src/dotty/tools/dotc/core/Definitions.scala
index b0927d4be..8e76282a3 100644
--- a/src/dotty/tools/dotc/core/Definitions.scala
+++ b/src/dotty/tools/dotc/core/Definitions.scala
@@ -3,6 +3,9 @@ package dotty.tools.dotc.core
import Types._, Contexts._, Symbols._
class Definitions(implicit ctx: Context) {
+ private var _isInitialized = false
+ def isInitialized = _isInitialized
+
lazy val AnyClass: ClassSymbol = ???
lazy val AnyType = AnyClass.typeConstructor
lazy val AnyValClass: ClassSymbol = ???
@@ -15,4 +18,11 @@ class Definitions(implicit ctx: Context) {
lazy val SingletonClass: ClassSymbol = ???
lazy val SingletonType = SingletonClass.typeConstructor
lazy val ArrayClass: ClassSymbol = ???
+
+ def init() =
+ if (!isInitialized) {
+ // force initialization of every symbol that is synthesized or hijacked by the compiler
+ val forced = ???
+ _isInitialized = true
+ }
} \ No newline at end of file