Nikita
Плагин тот же. Профит - дебаггер
Nikita
В clion отладчик работает
Nikita
Работает, в идее он не работает
Nikita
ну по крайней мере так говорят. я как адепт старой школы, отлаживаюсь прям в gdb
Mykyta
Nikita
Это с непривычки. Потом на гуёвые отладчики смотреть становится больно.
Nikita
там есть нюансы с расстановкой breakpiont, особенно в функциях трейтов каких-нибудь хитрых, автокомплит иногда может ломаться
Nikita
но возможно что-то изменилось уже
𝙽𝚒𝚌𝚔
В clion отладчик интегрирован неидеально, регулярно пропадают нужные объекты из контекста, приходится переключаться в GDB. Единственное преимущество - бряки ставить легче - просто нашёл место и мышкой клац. Но команды GDB всё-равно знать полезно.
𝙽𝚒𝚌𝚔
Тем более что там никакой не роскет саенс, всё довольно интуитивно.
Anton
Посоны
Anton
крч как оказалось камеры никакой нет в офисе
Anton
оказалось что мол раньше какой то чувак снимал и хуй знает кто
Anton
так что теперь открыт запрос на то что посоны если у кого есть камера то халп
Маjко
https://github.com/newpavlov
Маjко
Это кто-то из наших, не в курсе?
Αλεχ
https://github.com/rust-lang/rfcs/pull/2457
Αλεχ
ахаха
Αλεχ
принес вам братишки
Evgεny
cyka blyad
Evgεny
как там изъябнуться не знают
Anton
/jerk
Loo
> Examples of invalid identifiers are:
Loo
>
Many Emojis: slightly_smiling_face, crab, hankey, ...
Loo
...
Loo
без эмоджи говна я бы такой рфц не принимал
Marat
Маjко
Это для rustylang
𝙽𝚒𝚌𝚔
крабов и других ракообразных нельзя 😒
Roma
Roma
вместо existential ебанут!
Anton
посмотите на свифт
Anton
Roma
Loo
функция возвратит кучу говна?
Kerrigan
Anonymous
https://hsto.org/files/444/1bf/b55/4441bfb559594f938e8dfc962f5b599e.png
Anonymous
Классика же.
Anton
Evgenii
Anonymous
deepcode.eth
Leonid 🦇
"Ой всё" бросает исключение
Alexander
А что делают фигурные скобки в матче: match { *t }? Без них borrow checker лютует, с ними - норм. Почему так?
Cat
Alexander
Внутри t - Box'ы.
պլհկ
скинул бы сразу пример на плейграунд
Alexander
Есть issue на эту тему, но я не понял: https://github.com/rust-lang/rust/issues/16223
Cat
13 | match { *t }
| - expected one of `.`, `?`, `{`, or an operator here
Alexander
Есть пример на SO: https://stackoverflow.com/questions/28638757/use-of-collaterally-moved-value-error-on-a-recursive-enum
Alexander
У меня похожий случай.
Alexander
Оборачивание *t в фигурные скобки в матче помогло - я не понял почему?
Alexander
И следующий вопрос: можно ли получить "разрушающий" итератор по мутабельному вектору, который элементы будет доставать по значению?
-__-
Alexander
red75prime
Оборачивание *t в фигурные скобки в матче помогло - я не понял почему?
https://github.com/rust-lang/rust/issues/16223#issuecomment-51007948
match *it { Cons(a, b) => ... } пытается вытащить a и b из бокса последовательно, но после вытаскивания а бокс разрушается. {*it} работает как identity function и вытаскивает значение из бокса целиком
Alexander
Вопрос: делаю core.run(client).map_err
... Как мне это всё, например, в loop запихнуть, чтоб перезапускалось если упало?
Alexander
.clone на клиент не работает.
Alexander
Какие-то Rc городить - что-то перебор думаю.
Vladimir
Vladimir
Ты можешь пойти сверху вниз. Всё кроме обработки внешних аргументов в один методпоместить и делать loop{catch_unwind(|| method()).log_err()}
Vladimir
Дальше посмотреть какая часть из метода не паникует, и обложить только ту что паникует.
Alexander
Ну тут не паникует - а просто err из code.run приходит.
Alexander
Просто вопрос - можно ли его перезапустить без Rc и без пересоздания фьючи?
պլհկ
У тебя логика ретрая внутри должна быть
պլհկ
См. tokio-retry
Alexander
Хм, спасибо, посмотрю. Т.е. само соединение надо в другую фьючу класть, которая будет обрабатывать падение клннекшена и рестартить.
Cat
Или https://crates.io/crates/futures-retry
Alexander
Cat
@mexus спасибо
Alexander
См. tokio-retry
Ого, ещё забавнее - типа можно повторить сколько-то раз через таймаут
Alexander
Смущает что у меня всё на tokio-core, а тут все на tokio::run
պլհկ
Переходи на tokio
պլհկ
Будь модным
Alexander
Да я всего день с этим Токио(-кор), ещё ничего не умею и не знаю.