Здравствуйте! Не могу разобраться, как сделать импла 2 несколько разных трейтов? 42

| impl<T: SomeTrait1> MaybeSetter for T {
| ---------------------------------------------------- first implementation here
...
60 | impl<T: SomeTrait2> MaybeSetter for T {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation

6 ответов

4 просмотра

Так нельзя Никто не мешает сторонней библиотеке сделать свой тип TT, для которого реализовать и SomeTrait1, и SomeTrait2

нужна специализация по типу default fn. в стабле можно только один for любой T с трейтом. у вас может выйти, что тип имеет и T1 и T2 одновременно и раст не определит fn вы можете сделать (свои) аноним типы и на них навесить ваши T

AMD EPYC™ 9684X
подробнее в конце?

например сделать пустую структуру, даже две. и сделать на каждый из них impl и прозрачный конверт, например в основной структуре сделать функцию trait2(&self) которая вернет структуру с этим trait или даже impl Trait2

AMD EPYC™ 9684X
подробнее в конце?

пример как сделано в path, там есть функция display которая имеет trait Display

AMD-EPYC™ 9684X Автор вопроса
Денис Котляров
например сделать пустую структуру, даже две. и сд...

Звучит довольно разумно, но, наверное, придётся много кода менять под "новые" структуры, да?

Похожие вопросы

Обсуждают сегодня

Всем привет, может уже кто-то пытался выдернуть из api информацию о дате рождения пользователя Есть ли вообще такая возможность?
Artem Stormageddon
2
а что делать если тебя убивают на картах?
Yarik yarik kyda ti lezesh
43
Подскажите где можно прочитать про реализацию возможности писать человеку при подписке на телеграм канал от имени бота? Было бы не плохо если для Telegraf@3.38.0
Pan Lipton
10
Мне вот что интересно, кто на рфе стартовал/играл, что вы фармили, в каком виде контента он прямо хорош? Экспедиция? Вроде прямо на замазанных мапах рф сдувается
Владислав
20
Ребята, я за проф советом😅 По микросервисам. В монолите есть общие файлы для сервисов: фетчи, конфиги, либы, утилсы.. как при распиле правильно их поддерживать? Пока вариант д...
Александр Тарасюк
1
всем привет. я правильно понимаю, что в телеграфе 4, если сессию указать у сообщения с коллбеком (кликнул на кнопку и установил сессию), то она не сохраняется?
Тимур
1
‌/r/pathofexile moderation changes top scoring links : pathofexile (RSS) Hi, everyone. On behalf of the subreddit mod team, I’m here to give you a few updates on the subreddi...
Esionru
3
У вас бывает ощущение, что хочется потратить весь отпуск на то, чтоб только спать?
Николай
15
У меня вопрос к знающими, стоит ли вступать в гильдии в игре или лучше полная свобода?
Енот Полоскун
17
Кто нибудь поясните это всё таки вброс или да? Про санктум слышал на поедб вбросили, а по дурке откуда инфа и на сколько это вообще правда? Пахнет шизофренией какой-то ✅Divi...
Dmitry Ritter
9
Карта сайта