Skip to content

Commit dadccc4

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. [Cherry-picked 6793291][modified]
1 parent c8927bb commit dadccc4

27 files changed

+6
-36
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/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, Setup, EventuallyCapturingType, isEventuallyCapturingType}
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
@@ -13,7 +13,6 @@ import StdNames.nme
1313
import Flags.{Module, Provisional}
1414
import dotty.tools.dotc.config.Config
1515
import cc.boxedUnlessFun
16-
import dotty.tools.dotc.transform.TypeUtils.isErasedValueType
1716

1817
object TypeApplications {
1918

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: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,12 @@
11
package dotty.tools
22
package dotc
3-
package transform
3+
package core
44

5-
import core.*
65
import TypeErasure.ErasedValueType
7-
import Types.*
8-
import Contexts.*
9-
import Symbols.*
6+
import Types.*, Contexts.*, Symbols.*, Flags.*, Decorators.*
107
import Names.Name
118

12-
import dotty.tools.dotc.core.Decorators.*
13-
14-
object TypeUtils {
9+
class TypeUtils {
1510
/** A decorator that provides methods on types
1611
* that are needed in the transformer pipeline.
1712
*/

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

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

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ import dotty.tools.dotc.ast.{tpd, untpd}
2929
import ast.TreeTypeMap
3030
import dotty.tools.dotc.core.{Constants, Flags}
3131
import ValueClasses.*
32-
import TypeUtils.*
3332
import ContextFunctionResults.*
3433
import ExplicitOuter.*
3534
import core.Mode

0 commit comments

Comments
 (0)