diff options
author | Martin Odersky <odersky@gmail.com> | 2014-12-18 16:21:19 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2014-12-18 16:21:19 +0100 |
commit | 43fefd527e3ec424a6b1232aed63b50dd6a71342 (patch) | |
tree | 60e913d34f98f3d33e50e951a770f9b2251496c5 /src/dotty/tools/dotc/typer/Namer.scala | |
parent | 064974fd4877bcf77dc495f1dcef9dfd2d626435 (diff) | |
download | dotty-43fefd527e3ec424a6b1232aed63b50dd6a71342.tar.gz dotty-43fefd527e3ec424a6b1232aed63b50dd6a71342.tar.bz2 dotty-43fefd527e3ec424a6b1232aed63b50dd6a71342.zip |
New method on scopes: openForMutations
Replaces `asInstanceOf[MutableScope]` calls.
Diffstat (limited to 'src/dotty/tools/dotc/typer/Namer.scala')
-rw-r--r-- | src/dotty/tools/dotc/typer/Namer.scala | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/typer/Namer.scala b/src/dotty/tools/dotc/typer/Namer.scala index 91de8fe1e..ea2fd40de 100644 --- a/src/dotty/tools/dotc/typer/Namer.scala +++ b/src/dotty/tools/dotc/typer/Namer.scala @@ -27,7 +27,7 @@ trait NamerContextOps { this: Context => def enter(sym: Symbol): Symbol = { ctx.owner match { case cls: ClassSymbol => cls.enter(sym) - case _ => this.scope.asInstanceOf[MutableScope].enter(sym) + case _ => this.scope.openForMutations.enter(sym) } sym } @@ -37,7 +37,7 @@ trait NamerContextOps { this: Context => if (owner.isClass) if (outer.owner == owner) { // inner class scope; check whether we are referring to self if (scope.size == 1) { - val elem = scope.asInstanceOf[MutableScope].lastEntry + val elem = scope.lastEntry if (elem.name == name) return elem.sym.denot // return self } assert(scope.size <= 1, scope) @@ -306,7 +306,7 @@ class Namer { typer: Typer => val localCtx: Context = ctx.fresh.setNewScope selfInfo match { case sym: Symbol if sym.exists && sym.name != nme.WILDCARD => - localCtx.scope.asInstanceOf[MutableScope].enter(sym) + localCtx.scope.openForMutations.enter(sym) case _ => } localCtx |