Я бы хотел использовать переменную tracer для программ Scala, которая отслеживает чтение и запись определенных полей класса.
Например, если у меня есть собственный класс актера, такой как:
class Server extends Actor {
var counter = 0
def receive = {
case A => counter += 1
case B if (counter == 0) => ...
case B => ...
}
}
Класс использует тип актера Акки.Я хочу отследить все поля классов, которые наследуются от Actor
, например counter
, и различать операции чтения и записи.Обратите внимание, что я не хочу отслеживать другие поля классов!
Существует ли какая-либо инфраструктура трассировки для Scala, которая позволяет отслеживать чтение / запись полей класса только для определенных классов?Если нет другого пути, я также готов применить код Scala, изменив все поля на пользовательский тип с помощью операторов.В этом случае мне потребуются некоторые инструментальные рамки для кода Scala.