Size: a a a

2020 October 15

G

George in Rust Beginners
Получается, некоторые функции sqlx тупо неюзабельны? По крайней мере в контексте использования кложур с ними.
источник

АГ

Алексей Герасимов... in Rust Beginners
надо в общем чате спросить про статус этой баги
источник

АГ

Алексей Герасимов... in Rust Beginners
George
Получается, некоторые функции sqlx тупо неюзабельны? По крайней мере в контексте использования кложур с ними.
хз, а у них есть примеры на использование этих функций?
источник

G

George in Rust Beginners
Алексей Герасимов
хз, а у них есть примеры на использование этих функций?
Неа. Доки у них внутри полумёртвые местами.

 /// Execute the function inside a transaction.
   ///
   /// If the function returns an error, the transaction will be rolled back. If it does not
   /// return an error, the transaction will be committed.

на гитхабе тоже нема, сейчас в экзамплах пороюсь ещё, но там тривиальщина была.

upd: примеров нет.
источник

АГ

Алексей Герасимов... in Rust Beginners
попробуйте на обычную функцию переписать которая impl Future + ‘c возвращает, где ‘c лайфтайм коннэкшона
источник

G

George in Rust Beginners
https://github.com/launchbadge/sqlx/issues/604
видимо, вчера я плохо прочитал их issue. Сейчас перечитал, всмотрелся в ошибки и понял.
источник

G

George in Rust Beginners
Неюзабельно.

>  Unfortunately such a bound is currently not supported by rustc, so this API would need the language to be changed to make it working.
источник

АГ

Алексей Герасимов... in Rust Beginners
игрушечный язык, чо
источник

G

George in Rust Beginners
Алексей Герасимов
игрушечный язык, чо
*для блокчейнов и телеграм-ботов
источник

SS

Steel Sword in Rust Beginners
Алексей Герасимов
игрушечный язык, чо
Тут кто-то быканул или мне показалось?
источник

АГ

Алексей Герасимов... in Rust Beginners
вот из-за таких «шероховатостей» фиг кому async-раст продашь, хочешь zero cost - страдай, а без него и раст не нужен
источник

G

George in Rust Beginners
Закостылил как-то так. async и async move активно сопротивляется пиханию в макрос, поэтому сделал вот так с промежуточным биндингом в creation_block, да и для удобства чтения. Зато работает.
Из минусов - тип наружу не выводится. Надо руками указывать let created_user: User = ...
источник

A

Adatan in Rust Beginners
источник

A

Adatan in Rust Beginners
как с такой штукой бороться?
источник

MB

Mikail Bagishov in Rust Beginners
Проще всего вынести это выражение в отдельную переменную
источник

АГ

Алексей Герасимов... in Rust Beginners
хм, интересно, а почему не сделали автопродление времени жизни временных переменных?
источник

MB

Mikail Bagishov in Rust Beginners
Оно есть, но оно не настолько сильное. Временный объект живет до конца стейтмента по-моему.
источник

MB

Mikail Bagishov in Rust Beginners
Можно накостылить продление через match, кстати
источник

MB

Mikail Bagishov in Rust Beginners
match &(7+4) {
   tmp => println!("{}", tmp)
}
источник

EG

Emmanuel Goldstein in Rust Beginners
Mikail Bagishov
Можно накостылить продление через match, кстати
А чем это лучше, чем
{
   let tmp = &(7 + 4);
   println!("{}", tmp);
}

?
источник