Size: a a a

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

2020 October 10

AV

Andrey Vlasov in Rust — русскоговорящее сообществo
Я никогда не парюсь с ансейфом в таких случаях
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Andrey Vlasov
Компилятор вроде умеет выкидывать недостижимые паники
+
Если не нравится конкретно размер дебажного бинарника, то abort очень дешевый
источник

в🧇

вафель 🧇 in Rust — русскоговорящее сообществo
Andrey Vlasov
Компилятор вроде умеет выкидывать недостижимые паники
Паники, к сожалению, достаточно плохо вычищаются. Поэтому иногда всё же стоит сделать abort
источник

Э

Эрик in Rust — русскоговорящее сообществo
Вот да, если совсем не хочется лишнего кода, то просто аборт.
источник

Э

Эрик in Rust — русскоговорящее сообществo
unreachable_unchecked всё-таки unsafe и может привести к UB.
источник

АМ

Александр Маглеванны... in Rust — русскоговорящее сообществo
Хмм. Аргумент с возможным изменением кода в будущем, конечно, адекватен.

С другой стороны я прям точно точно уверен что не дойдет никогда исполнение до той ветки. Если компилятор выкидывает неиспользуемую панику, то действительно лучше ее просто вставить.
источник

Э

Эрик in Rust — русскоговорящее сообществo
Александр Маглеванный
Хмм. Аргумент с возможным изменением кода в будущем, конечно, адекватен.

С другой стороны я прям точно точно уверен что не дойдет никогда исполнение до той ветки. Если компилятор выкидывает неиспользуемую панику, то действительно лучше ее просто вставить.
Зависит от сложности кода. Какое-нибудь if !v.is_empty() { v.last().unwrap() } обычно оптимизирует, а вот цикл с неочевидными для компилятора зависимостями ветвления — нет.
источник

p

polunin.ai in Rust — русскоговорящее сообществo
https://github.com/teloxide/teloxide/blob/feature/creating-handling/examples/simple_commands_bot/src/main.rs#L165
с асинками муть какая-то, я ошибку саму не могу понять. можете подсказать что мне компилятор говорит?
источник

AV

Andrey Vlasov in Rust — русскоговорящее сообществo
Функция в репл много раз выполняется?
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Andrey Vlasov
Функция в репл много раз выполняется?
да
источник

AV

Andrey Vlasov in Rust — русскоговорящее сообществo
А ты в неё муваешь объект
источник

p

polunin.ai in Rust — русскоговорящее сообществo
Andrey Vlasov
А ты в неё муваешь объект
где?
источник

Э

Эрик in Rust — русскоговорящее сообществo
Ну вот и проблема. На каждый цикл требуется своя схема.
источник

AV

Andrey Vlasov in Rust — русскоговорящее сообществo
polunin.ai
где?
166 строка
источник

p

polunin.ai in Rust — русскоговорящее сообществo
там &self в try_handle
источник

AV

Andrey Vlasov in Rust — русскоговорящее сообществo
Ну, замыканию пофиг, видимо
источник

Э

Эрик in Rust — русскоговорящее сообществo
У тебя в ошибке UpdateWithCx<Self::Update>
источник

AV

Andrey Vlasov in Rust — русскоговорящее сообществo
Хотя сама лямбда без move, так что хз, почему так
источник

в🧇

вафель 🧇 in Rust — русскоговорящее сообществo
polunin.ai
там &self в try_handle
>async move
источник

p

polunin.ai in Rust — русскоговорящее сообществo
убрал move, какие-то беды с лайфтаймами.
источник