Когда выполняется конструктор пользовательского класса аннотаций Scala? - PullRequest
0 голосов
/ 28 марта 2019

Я определил класс Scala MyAnnotation , используемый для аннотирования определенных классов в моей программе:

case class MyAnnotation() extends scala.annotation.StaticAnnotation {
println("MyAnnotation initialized") // doesn't get printed
}

, который используется следующим образом:

@MyAnnotation()
class MyClass() {
...
}

Однако когда я создаю экземпляр класса MyClass , конструктор MyAnnotation не выполняется.То есть println не происходит.

val x = new MyClass()
// nothing gets printed

Обобщено: есть ли способ предоставить конструктор для пользовательского класса аннотаций, который выполняется, когда создается другой класс, аннотированный этой аннотацией?

...