diff options
author | Martin Odersky <odersky@gmail.com> | 2013-01-06 12:18:04 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2013-01-06 12:19:07 +0100 |
commit | cd0ed1676ac5529b0c04995b9a26f8e165cad4cf (patch) | |
tree | 9305347b1f12f315953e93c8b598b93c9dd358aa /src/dotty/tools/dotc/core/Contexts.scala | |
parent | a42900db82a35e612779a8d4ca685a9fa76cc92d (diff) | |
download | dotty-cd0ed1676ac5529b0c04995b9a26f8e165cad4cf.tar.gz dotty-cd0ed1676ac5529b0c04995b9a26f8e165cad4cf.tar.bz2 dotty-cd0ed1676ac5529b0c04995b9a26f8e165cad4cf.zip |
Renamed class for SubTypers and added to Context
Diffstat (limited to 'src/dotty/tools/dotc/core/Contexts.scala')
-rw-r--r-- | src/dotty/tools/dotc/core/Contexts.scala | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/core/Contexts.scala b/src/dotty/tools/dotc/core/Contexts.scala index bdec812bf..873bbf377 100644 --- a/src/dotty/tools/dotc/core/Contexts.scala +++ b/src/dotty/tools/dotc/core/Contexts.scala @@ -16,6 +16,7 @@ object Contexts { val underlying: Context val root: RootContext val period: Period + def constraints: Constraints def subTyper: SubTyper def names: NameTable def phase: Phase = ??? @@ -26,8 +27,11 @@ object Contexts { abstract class SubContext(val underlying: Context) extends Context { val root: RootContext = underlying.root val period: Period = underlying.period - val subTyper = underlying.subTyper + val constraints = underlying.constraints def names: NameTable = root.names + lazy val subTyper = + if (constraints eq underlying.constraints) underlying.subTyper + else new SubTyper(this) } class RootContext extends Context @@ -37,6 +41,7 @@ object Contexts { with Types { val underlying: Context = throw new UnsupportedOperationException("RootContext.underlying") + def subTyper: SubTyper = ??? val root: RootContext = this val period = periodOf(NoRunId, NoPhaseId) @@ -46,7 +51,7 @@ object Contexts { var lastPhaseId: Int = NoPhaseId lazy val definitions = new Definitions()(this) - val subTyper = new SubTyper(Map())(this) + val constraints: Constraints = Map() } private final val initialUniquesCapacity = 4096 |