Класс implicitAmbiguous.implicitAmbiguous
Для настройки сообщения об ошибке, которое выводится при поиске неявно заданных, но многозначных значений, добавьте аннотацию @implicitAmbiguous. Предполагая, что неявно заданное значение — это метод с параметрами типа X1,..., XN, сообщение об ошибке будет результатом замены всех вхождений ${Xi} в строке msg строковым представлением соответствующего аргумента типа Ti.
Если собрано более одной аннотации @implicitAmbiguous, компилятор имеет право выбрать любую из них для отображения.
Полезные ошибки могут направить пользователей к исправлению импортов или даже объяснить, почему код намеренно не компилируется.
trait =!=[C, D]
implicit def neq[E, F] : E =!= F = null
@annotation.implicitAmbiguous("Could not prove ${J} =!= ${J}")
implicit def neqAmbig1[G, H, J] : J =!= J = null
implicit def neqAmbig2[I] : I =!= I = null
implicitly[Int =!= Int]
| Суперобъекты |
|---|
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/annotation/implicitAmbiguous.html