то есть виртуальность метода в трейте зависит от параметра в какой-то левой функции? Окей
Таким образом в некоторых функциях метод будет виртуальным, а в некоторых статическим. Таким образом максимизируется использование статического полиморфизма и следовательно скорость
Только что привели пример с Rust. Он не требует в каждом объекте хранить указатель. Только в тех, которые мы хотим передать в функции, работающие с полиморфными объектами...