What is the replacement in scala3 of scala2's `ClassTag <:<`?

Welcome to Scala 3.2.0-RC2 (17.0.3.1, Java Java HotSpot(TM) 64-Bit Server VM).
Type in expressions for evaluation. Or try :help.

scala> import scala.reflect.ClassTag

scala> summon[ClassTag[Int]] <:< summon[ClassTag[AnyVal]]
1 warning found
-- Deprecation Warning: --------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1 |summon[ClassTag[Int]] <:< summon[ClassTag[AnyVal]]
  |^^^^^^^^^^^^^^^^^^^^^^^^^
  |method <:< in trait ClassManifestDeprecatedApis is deprecated since 2.10.0: use scala.reflect.runtime.universe.TypeTag for subtype checking instead
val res0: Boolean = true

scala> import scala.reflect.runtime.universe.TypeTag
-- [E008] Not Found Error: -----------------------------------------------------------------------------------------------------------------------------------------------------------------------

1 |import scala.reflect.runtime.universe.TypeTag
  |       ^^^^^^^^^^^^^^^^^^^^^
  |       value runtime is not a member of reflect
1 error found

Scala 3 does not have any equivalent to TypeTag for run-time reflection.

However, there exists a third party library izumi-reflect that aims at providing a replacement.

2 Likes