diff options
Diffstat (limited to 'src/dotty/tools/dotc/core')
-rw-r--r-- | src/dotty/tools/dotc/core/Contexts.scala | 3 | ||||
-rw-r--r-- | src/dotty/tools/dotc/core/Decorators.scala | 4 | ||||
-rw-r--r-- | src/dotty/tools/dotc/core/StdNames.scala | 1 | ||||
-rw-r--r-- | src/dotty/tools/dotc/core/SymDenotations.scala | 5 | ||||
-rw-r--r-- | src/dotty/tools/dotc/core/Types.scala | 2 |
5 files changed, 12 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/core/Contexts.scala b/src/dotty/tools/dotc/core/Contexts.scala index af8bd6e91..6ff6e148d 100644 --- a/src/dotty/tools/dotc/core/Contexts.scala +++ b/src/dotty/tools/dotc/core/Contexts.scala @@ -293,8 +293,7 @@ object Contexts { /** The standard fresh name creator */ val freshNames = new FreshNameCreator.Default - def freshName(): String = freshNames.newName() - def freshName(prefix: String): String = freshNames.newName(prefix) + def freshName(prefix: String = ""): String = freshNames.newName(prefix) def freshName(prefix: Name): String = freshName(prefix.toString) /** The loader that loads the members of _root_ */ diff --git a/src/dotty/tools/dotc/core/Decorators.scala b/src/dotty/tools/dotc/core/Decorators.scala index 031974dfd..094aa7b4a 100644 --- a/src/dotty/tools/dotc/core/Decorators.scala +++ b/src/dotty/tools/dotc/core/Decorators.scala @@ -70,6 +70,10 @@ object Decorators { } } + implicit class ListOfListDecorator[T](val xss: List[List[T]]) extends AnyVal { + def nestedMap[U](f: T => U): List[List[U]] = xss map (_ map f) + } + implicit class TextToString(val text: Text) extends AnyVal { def show(implicit ctx: Context) = text.mkString(ctx.settings.pageWidth.value) } diff --git a/src/dotty/tools/dotc/core/StdNames.scala b/src/dotty/tools/dotc/core/StdNames.scala index ada74c69d..9ae4729f4 100644 --- a/src/dotty/tools/dotc/core/StdNames.scala +++ b/src/dotty/tools/dotc/core/StdNames.scala @@ -380,6 +380,7 @@ object StdNames { val info: N = "info" val inlinedEquals: N = "inlinedEquals" val isArray: N = "isArray" + val isDefined: N = "isDefined" val isDefinedAt: N = "isDefinedAt" val isEmpty: N = "isEmpty" val isInstanceOf_ : N = "isInstanceOf" diff --git a/src/dotty/tools/dotc/core/SymDenotations.scala b/src/dotty/tools/dotc/core/SymDenotations.scala index bec55720f..51e03aee7 100644 --- a/src/dotty/tools/dotc/core/SymDenotations.scala +++ b/src/dotty/tools/dotc/core/SymDenotations.scala @@ -470,6 +470,11 @@ object SymDenotations { final def enclosingClass(implicit ctx: Context): Symbol = if (isClass) symbol else owner.enclosingClass + final def enclosingClassNamed(name: Name)(implicit ctx: Context): Symbol = { + val cls = enclosingClass + if (cls.name == name) cls else cls.owner.enclosingClassNamed(name) + } + /** The top-level class containing this denotation, * except for a toplevel module, where its module class is returned. */ diff --git a/src/dotty/tools/dotc/core/Types.scala b/src/dotty/tools/dotc/core/Types.scala index 1b21567a0..880cb7174 100644 --- a/src/dotty/tools/dotc/core/Types.scala +++ b/src/dotty/tools/dotc/core/Types.scala @@ -1556,7 +1556,7 @@ object Types { /** The type of an import clause tree */ - case class ImportType(expr: SharedTree) extends UncachedGroundType + case class ImportType(expr: Tree) extends UncachedGroundType /** Sentinal for "missing type" */ case object NoType extends CachedGroundType { |