@odomontois в общем я придумал охуительное решение - тайпчекнуть выражение и заменить ему все Nothing генерики на нужный тип
проверил, все тесты проходит, все работает (правда как полиморфный вариант сделать я пока хуй знает)
(там кстати еще вроде бы баг заодно нашел из-за которого
@derive(
foo.bar(...)) вариант синтаксиса не работал)