Каков стандартный способ профилирования вызовов методов Scala?
Мне нужны крючки вокруг метода, с помощью которых я могу запускать и останавливать таймеры .
В Java я использую аспектное программирование, aspectJ, для определения методов, которые нужно профилировать, и внедрения байт-кода для достижения того же.
Есть ли более естественный способ в Scala, где я могу определить набор функций, которые будут вызываться до и после функции, без потери статической типизации в процессе?