хотя щас подумал. ошибка имеет смысл. у меня в трейт добавится метод, которые не использует дженерик-параметр. значит, имеет смысл в данном случае трейт разделить на два и кастовать во второй, не параметризованный
да, разделить на несколько трейтов всё же придется. но это в любом случае кажется разумным. т.к. в противном случае я не смогу вызывать дженерик-методы, т.к. имплементация может не принимать аргумент с заданным типом