Size: a a a

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

2020 September 27

H

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

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Оставить demux!() для сторонних и сделать дерайв для юзерских
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Хотя бы тривиально автоматически имплементить
impl MyEnum {
   fn demux() -> WTF {
       demux!(MyEnum { A, B, C })
   }
}
источник

H

Hirrolot in Rust — русскоговорящее сообществo
как тогда указать какие варианты демультиплексировать?
источник

EG

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

H

Hirrolot in Rust — русскоговорящее сообществo
у меня могут и не все, есть .. синтаксис
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Ладно, да, я понял проблему
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Emmanuel Goldstein
let (mut i32_stream, mut f64_stream, mut str_stream) =
   demux!(MyEnum { A, B, C })(panicking())(stream.boxed());

Например, унести demux!() в дерайв
Это просто ощущается пока не очень Rusty
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Скорее эээ как хаскеллисты называют свою идиоматичность?
источник

Э

Эрик in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Скорее эээ как хаскеллисты называют свою идиоматичность?
no do at all costs
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Эрик
no do at all costs
Не гуглиццо
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
И с учётом того как выглядит средняя хаскеллевская либа, скорее do at all costs лол
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Зачем, кстати, там каррирование?
источник

Э

Эрик in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Не гуглиццо
Это мем из двух понятий хаскеля: одно — обычное do из языка, а второе — мем "avoid success at all costs".
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Иначе лайфтаймы не сходятся?
источник

Э

Эрик in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Зачем, кстати, там каррирование?
Каррирование — это офигительно удобно.
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Эрик
Каррирование — это офигительно удобно.
Не в расте
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
Каррирование хорошо выглядит, когда у тебя применение функции через пробел
источник

EG

Emmanuel Goldstein in Rust — русскоговорящее сообществo
а(вот)(это)(выглядит)(так)(себе)(и)(набирать)(неудобно)
источник

H

Hirrolot in Rust — русскоговорящее сообществo
Emmanuel Goldstein
Зачем, кстати, там каррирование?
ну изначально демультиплексор мог захватывать среду, и, если его в другую функцию подать, которая ожидает демультиплексор с уже установленным обработчиком ошибок, каррирование могло пригодится. билдер бы требовал дополнительного обобщённого типа ErrorHandler. сейчас захватывать среду не могут, нужно пересмотреть дизайн, возможно на билдер поменяю
источник