Size: a a a

Rust — русскоговорящее сообществo

2020 April 19

В

Вафель in Rust — русскоговорящее сообществo
MrSmith
На первом месте адекватность ошибки компилятора и краткость кода
С таким первым место ровно 2 варианта — трейты или делать методам разные имена
источник

M

MrSmith in Rust — русскоговорящее сообществo
Вафель
С таким первым место ровно 2 варианта — трейты или делать методам разные имена
Второй отклоняем, как с трейтами предлагаешь? Через реализацию Callable?
источник

В

Вафель in Rust — русскоговорящее сообществo
MrSmith
Второй отклоняем, как с трейтами предлагаешь? Через реализацию Callable?
Не, это тебе ошибок нормальных не даст
источник

В

Вафель in Rust — русскоговорящее сообществo
(хотя можно, у функций в расте почему-то параметры дженерик, а не асоциированный тип)
источник

M

MrSmith in Rust — русскоговорящее сообществo
источник

M

MrSmith in Rust — русскоговорящее сообществo
У меня была идея как enum реализовать для общей функции принимающей енум енумов
источник

В

Вафель in Rust — русскоговорящее сообществo
MrSmith
Второй отклоняем, как с трейтами предлагаешь? Через реализацию Callable?
Что-нибудь типа

fn my_func<T: MyTrait>(arg: T) -> T::Output {
   arg.my_fn()
}


Или просто трейт для разных типов имплементировать
источник

A

Adv0cat in Rust — русскоговорящее сообществo
egoarka
есть отдельный чатик по rust + web ?

а то в этом чатике не хочется писать, тк он более общий что ли
та пиши тут, не стесняйся, есть только отдельный чат по async
источник

В

Вафель in Rust — русскоговорящее сообществo
В общем тут надо на конкретный метод смотреть, чтобы понять что можно абстрагировать и как это назвать
источник

M

MrSmith in Rust — русскоговорящее сообществo
Вафель
В общем тут надо на конкретный метод смотреть, чтобы понять что можно абстрагировать и как это назвать
По ссылке
источник

В

Вафель in Rust — русскоговорящее сообществo
MrSmith
По ссылке
Я не понял что там написано(
источник

M

MrSmith in Rust — русскоговорящее сообществo
Могу дать оригинал либы
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Вафель
Что-нибудь типа

fn my_func<T: MyTrait>(arg: T) -> T::Output {
   arg.my_fn()
}


Или просто трейт для разных типов имплементировать
Вау, хороший паттерн, нужно запомнить
источник

В

Вафель in Rust — русскоговорящее сообществo
Где тут перегрузки? Я что-то упускаю, вроде везде имена разные

Upd: вижу
источник

M

MrSmith in Rust — русскоговорящее сообществo
источник

r

red75prime in Rust — русскоговорящее сообществo
Вафель
Где тут перегрузки? Я что-то упускаю, вроде везде имена разные

Upd: вижу
define_inst!(div, Div, Gp);  
define_inst!(div, Div, Mem);
источник

M

MrSmith in Rust — русскоговорящее сообществo
Вафель
Где тут перегрузки? Я что-то упускаю, вроде везде имена разные

Upd: вижу
В диве том же различаются последние параметры как gp mem
источник

В

Вафель in Rust — русскоговорящее сообществo
мило
источник

M

MrSmith in Rust — русскоговорящее сообществo
Вафель
мило
Раскуривается примерно за 3 недели весь код. Нужно кофе и блок сиг
источник

В

Вафель in Rust — русскоговорящее сообществo
MrSmith
В диве том же различаются последние параметры как gp mem
Мб можно для Gp и Mem трейт имплементировать?
источник