чтоб потом в классах, наследованных от трейта вызывался переопределенный метод?
Смотри, это крайне просто. Начинаешь с того, что пишешь import io.aecor.liberator.macros.free @free trait Logging[F[_]]{ def log(x : String) : F[Unit] }
Обсуждают сегодня