Есть ли способ в Scala найти и отобразить все применения implicits в моем коде или скомпилировать без implicits enabled (так что я получаю ошибки компиляции)? Я надеюсь определить места, где я непреднамеренно выделяю дополнительную память во внутренних циклах.Найти все implicits
ответ
Вы можете использовать опцию -Xprint:typer
и посмотреть, как проверены внутренние петли, представляющие интерес. Неявные вызовы появятся в печатном исходном коде. Вам может потребоваться передать вывод в файл, чтобы вы могли искать интересные разделы.
Также в ночных клубах Scala Eclipse IDE на http://scala-ide.org/download/nightly.html есть экранная неявная функция. Вы должны включить его в Предпочтения, Scala, Implicits раздел.
Двойные стрелки на левом поле показывает, что неявное используется:
На парении, он показывает детали:
Идея SCALA плагин также может показать неявные преобразования с подчеркиванием, см. ту же часть кода:
Он также должен показать, какой из них используется с помощью CTRL-SHIFT-Q ярлык, но я имел меньший успех с ним ...
По состоянию на вчера (это просто совпадение) есть -Xlog- неявное-преобразование.
scalac -Xlog-implicit-conversions -d /tmp /scala/trunk/src/library/scala/util/Random.scala
/scala/trunk/src/library/scala/util/Random.scala:115: applied implicit conversion from Int to ?{val to: ?} = implicit def intWrapper(x: Int): scala.runtime.RichInt
for (n <- buf.length to 2 by -1) {
^
- 1. Cats: как найти конкретный тип из implicits
- 2. SQLContext implicits
- 3. Implicits в заказе
- 4. Scala Implicits ошибка компиляции
- 5. Столкновение implicits в Scala
- 6. Странное поведение с implicits
- 7. макросов порождающих Scala implicits
- 8. Implicits and blackbox macros
- 9. Неожиданное поведение с implicits
- 10. Ошибка компилятора Implicits?
- 11. Implicits не работает, как ожидалось
- 12. Объекты Companion, implicits и Json
- 13. Scala bug? DelayedInit и Implicits
- 14. Упорядочивание implicits старшинство в Scala
- 15. Spark 2.0 missing spark implicits
- 16. Instance Implicits для проверки типов
- 17. Применение метода с Implicits Частично
- 18. Implicits с использованием структурных типов
- 19. Как переопределить implicits для типов
- 20. scala пользовательские литералы с implicits
- 21. implicits в scala Конструкторы классов
- 22. Scala implicits и переопределяет проблемы
- 23. implicits для объектов в Scala
- 24. Implicits над функциональными замыканиями в Scala
- 25. Scala: implicits, подклассы и члены типа
- 26. вызове функций, возвращаемые методами, которые принимают implicits
- 27. Использование implicits для ключей карты scala
- 28. Использование Scala implicits в последовательности, idiomatically
- 29. Как сделать implicits доступными для отражения
- 30. алиасов библиотека implicits в объекте пакета