Я попытался реализовать пример аннотаций макросов Scala, как описано в документации. . Мне удалось скомпилировать аннотации макросов до фактического проекта, который их использует, т. Е. @compileTimeOnly("enable macro paradise to expand macro annotations")
не срабатывает, что означает, что аннотация макроса скомпилирована до ее использования. Все идет нормально.
Однако, когда я аннотирую определенные значения в моем реальном проекте следующим образом:
@identity val foo: Double = 1.1
@identity val bar: String = "bar"
то я ожидаю, что при запуске основного проекта произойдет следующая печать (по приведенному выше примеру аннотации макроса):
(<empty>,List(val foo: Double = 1.1))
(<empty>,List(val bar: String = "bar"))
Вот тут я запутался, печать не происходит при запуске основного проекта. Однако он появляется на долю секунды при компиляции основного проекта в качестве предупреждения?
(Я использую IntelliJ IDEA и Scala 2.12.8)