Skip to content

Commit 6793291

Browse files
committed
Refactor TypeUtils
= Move to core package. It was for historical reasons in transform because it was originally intended as a collection of type operations that were were useful in transform phases. But it's now used from everywhere. - Make a base class of Types, so that it does not need to be imported explicitly.
1 parent 366f06a commit 6793291

29 files changed

+5
-33
lines changed

compiler/src/dotty/tools/dotc/ast/tpd.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ package ast
55
import dotty.tools.dotc.transform.{ExplicitOuter, Erasure}
66
import typer.ProtoTypes
77
import transform.SymUtils.*
8-
import transform.TypeUtils.*
98
import core.*
109
import Scopes.newScope
1110
import util.Spans.*, Types.*, Contexts.*, Constants.*, Names.*, Flags.*, NameOps.*

compiler/src/dotty/tools/dotc/core/ConstraintHandling.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import Flags.*
1010
import config.Config
1111
import config.Printers.typr
1212
import typer.ProtoTypes.{newTypeVar, representedParamRef}
13-
import transform.TypeUtils.isTransparent
1413
import UnificationDirection.*
1514
import NameKinds.AvoidNameKind
1615
import util.SimpleIdentitySet

compiler/src/dotty/tools/dotc/core/SymDenotations.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ import scala.util.control.NonFatal
2323
import config.Config
2424
import reporting.*
2525
import collection.mutable
26-
import transform.TypeUtils.*
2726
import cc.{CapturingType, derivedCapturingType}
2827

2928
import scala.annotation.internal.sharable

compiler/src/dotty/tools/dotc/core/TypeApplications.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import Names.*
1212
import StdNames.nme
1313
import Flags.{Module, Provisional}
1414
import dotty.tools.dotc.config.Config
15-
import dotty.tools.dotc.transform.TypeUtils.isErasedValueType
1615

1716
object TypeApplications {
1817

compiler/src/dotty/tools/dotc/core/TypeComparer.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ import TypeErasure.{erasedLub, erasedGlb}
1616
import TypeApplications.*
1717
import Variances.{Variance, variancesConform}
1818
import Constants.Constant
19-
import transform.TypeUtils.*
2019
import transform.SymUtils.*
2120
import scala.util.control.NonFatal
2221
import typer.ProtoTypes.constrained

compiler/src/dotty/tools/dotc/core/TypeErasure.scala

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import TypeOps.makePackageObjPrefixExplicit
99
import backend.sjs.JSDefinitions
1010
import transform.ExplicitOuter.*
1111
import transform.ValueClasses.*
12-
import transform.TypeUtils.*
1312
import transform.ContextFunctionResults.*
1413
import unpickleScala2.Scala2Erasure
1514
import Decorators.*
@@ -404,7 +403,6 @@ object TypeErasure {
404403
tp1 // After erasure, T | Nothing is just T and C | Null is just C, if C is a reference type.
405404
else tp1 match {
406405
case JavaArrayType(elem1) =>
407-
import dotty.tools.dotc.transform.TypeUtils.*
408406
tp2 match {
409407
case JavaArrayType(elem2) =>
410408
if (elem1.isPrimitiveValueType || elem2.isPrimitiveValueType)

compiler/src/dotty/tools/dotc/transform/TypeUtils.scala renamed to compiler/src/dotty/tools/dotc/core/TypeUtils.scala

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
package dotty.tools
22
package dotc
3-
package transform
3+
package core
44

5-
import core.*
65
import TypeErasure.ErasedValueType
76
import Types.*, Contexts.*, Symbols.*, Flags.*, Decorators.*
87
import Names.Name
98

10-
object TypeUtils {
9+
class TypeUtils {
1110
/** A decorator that provides methods on types
1211
* that are needed in the transformer pipeline.
1312
*/

compiler/src/dotty/tools/dotc/core/Types.scala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,8 @@ import scala.annotation.internal.sharable
4343
import scala.annotation.threadUnsafe
4444

4545
import dotty.tools.dotc.transform.SymUtils.*
46-
import dotty.tools.dotc.transform.TypeUtils.isErasedClass
4746

48-
object Types {
47+
object Types extends TypeUtils {
4948

5049
@sharable private var nextId = 0
5150

compiler/src/dotty/tools/dotc/printing/RefinedPrinter.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ import Trees.*
2323
import TypeApplications.*
2424
import NameKinds.{WildcardParamName, DefaultGetterName}
2525
import util.Chars.isOperatorPart
26-
import transform.TypeUtils.*
2726
import transform.SymUtils.*
2827
import config.{Config, Feature}
2928

compiler/src/dotty/tools/dotc/transform/AccessProxies.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import Flags.*
99
import Names.*
1010
import NameOps.*
1111
import Decorators.*
12-
import TypeUtils.*
1312
import Types.*
1413
import util.Spans.Span
1514
import config.Printers.transforms

0 commit comments

Comments
 (0)