У помічнику Coq proof - який також має неявні перетворення - можна шукати неявну конверсію за допомогою SearchAbout T
команда, яка повертає всі речі, які є T
за їхнім типом (який би включав конверсії до або з них T
)
Чи є спосіб знайти всі перетворення в або від типу для програмістів Scala? Зауважте, що перетворення можуть бути визначені поза проектом, який визначає або джерело, або тип призначення.
Відповіді:
1 для відповіді № 1Щоб швидко зрозуміти, чи існує перетворення в поточній області між двома еталонними типами S і T, просто введіть
((null:S):T)
і подивіться, чи вона компілюється. За допомогою Eclipse Scala IDE> = 2.1M2 ви можете бачити, яка конверсія викликається, якщо в налаштуваннях включена неявна підсвітка.
Звичайно, це вимагає відгадати обидва типи (але ви, мабуть, вже матимете чітке уявлення про те, що ви хочете перетворити на та з якого), і це вимагає, щоб перетворення вже були в обсязі.