Size: a a a

2020 March 10

EG

Emmanuel Goldstein in rust_offtopic
Это-то как раз вполне реальная фича Rust, которая даже в нём была
источник

EG

Emmanuel Goldstein in rust_offtopic
Но всё сломала и вот больше нет
источник

AZ

Alex Zhukovsky in rust_offtopic
Emmanuel Goldstein
Это-то как раз вполне реальная фича Rust, которая даже в нём была
я бы не сказал что это прям настолько дофига нужная фича что так надо ныть
источник

EG

Emmanuel Goldstein in rust_offtopic
https://github.com/GoldsteinE/teloxide/blob/fallible-storage/examples/dialogue_bot/src/main.rs#L176
Вот, например, реальный пример — эта последняя ветка не нужна.
источник

AZ

Alex Zhukovsky in rust_offtopic
полнофункциональные невер типы можно иметь, то что нет поддержки компилятора для таких кейсов - ну сорян
источник

EG

Emmanuel Goldstein in rust_offtopic
Она выражает вариант Err(Infallible).
источник

EG

Emmanuel Goldstein in rust_offtopic
Я хочу убедиться, что никакой другой вариант я не забыл. В текущем синтаксисе это быстро сделать нельзя.
источник

r

red75prime in rust_offtopic
Emmanuel Goldstein
Но всё сломала и вот больше нет
Never type больше не собираются стабилизировать?
источник

EG

Emmanuel Goldstein in rust_offtopic
red75prime
Never type больше не собираются стабилизировать?
Последний коммент в прошлом году
источник

EG

Emmanuel Goldstein in rust_offtopic
Emmanuel Goldstein
Я хочу убедиться, что никакой другой вариант я не забыл. В текущем синтаксисе это быстро сделать нельзя.
Т. е. на самом деле, если бы это не было примером, я бы честно выписывал
DialogueDispatcherHandlerCx { bot, update, dialogue: Err(_) } => panic!()
источник

EG

Emmanuel Goldstein in rust_offtopic
Но это очень вербозно для ветки, которая вообще не нужна, потому что никогда не выполняется
источник

EG

Emmanuel Goldstein in rust_offtopic
То, что там сейчас написано — это, вообще-то, неправда, потому что если появится новый вариант диалога, то оно скомпилируется
источник

EG

Emmanuel Goldstein in rust_offtopic
А не должно. И exhaustive_patterns решает как раз эту проблему.
источник

AZ

Alex Zhukovsky in rust_offtopic
А тебе не кажется что так читаемее?
источник

EG

Emmanuel Goldstein in rust_offtopic
Хм. Согласен, спасибо за идею.
источник

EG

Emmanuel Goldstein in rust_offtopic
Только функции .safe_unwrap() в стдлибе, увы, нет
источник

AZ

Alex Zhukovsky in rust_offtopic
ну, её придется написать
источник

P

Pavel in rust_offtopic
Emmanuel Goldstein
Но это очень вербозно для ветки, которая вообще не нужна, потому что никогда не выполняется
тем не менее это обычно корнеркейс и неплохо бы писать почему оно не может упасть
источник

G

Gymmasssorla in rust_offtopic
Alex Zhukovsky
А тебе не кажется что так читаемее?
Спасибо
источник

EG

Emmanuel Goldstein in rust_offtopic
С exhaustive_patterns (или с `safe_unwrap`) там компилятор проверит, что оно не может упасть
источник