Size: a a a

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

2020 September 07

H

Hirrolot in Rust — русскоговорящее сообществo
https://github.com/Hirrolot/mux-stream-macros/blob/master/src/demux.rs

ну вот код. тест валится в CI
источник

🏇

🏇🏻𝔊𝔬𝔩𝔬𝔡𝔫𝔶𝔦... in Rust — русскоговорящее сообществo
        let mut stmt = connection.prepare("SELECT chat_id FROM users GROUP BY chat_id ORDER BY chat_id ASC").unwrap();
       let chats_iter = stmt.query_map(&[], |row| {
           row.get(0)
       }).unwrap();

       for chat in chats_iter
       {
           chats.push(chat.unwrap());
       }


Какая проблема с этим кодом? Я так понимаю, что если в таблице нет строк, то приложение фаталит
источник

🏇

🏇🏻𝔊𝔬𝔩𝔬𝔡𝔫𝔶𝔦... in Rust — русскоговорящее сообществo
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: InvalidColumnType(0, Integer)', C:\Users\golod\.cargo\registry\src\github.com-1ecc6299db9ec823\rusqlite-0.14.0\src\row.rs:149:31
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: InvalidColumnType(1, Integer)', C:\Users\golod\.cargo\registry\src\github.com-1ecc6299db9ec823\rusqlite-0.14.0\src\row.rs:149:31
источник

🏇

🏇🏻𝔊𝔬𝔩𝔬𝔡𝔫𝔶𝔦... in Rust — русскоговорящее сообществo
фаталит где то на цикле for, сижу с дебагером, но все равно не понимаю, пару лет назад писал бота, ща разобрать не могу ^_^
источник

VG

Vladislav Golub in Rust — русскоговорящее сообществo
🏇🏻𝔊𝔬𝔩𝔬𝔡𝔫𝔶𝔦
        let mut stmt = connection.prepare("SELECT chat_id FROM users GROUP BY chat_id ORDER BY chat_id ASC").unwrap();
       let chats_iter = stmt.query_map(&[], |row| {
           row.get(0)
       }).unwrap();

       for chat in chats_iter
       {
           chats.push(chat.unwrap());
       }


Какая проблема с этим кодом? Я так понимаю, что если в таблице нет строк, то приложение фаталит
Отсутствие ORM
источник

🏇

🏇🏻𝔊𝔬𝔩𝔬𝔡𝔫𝔶𝔦... in Rust — русскоговорящее сообществo
Эт не проблема) там sqlite и вообще мало работы с бд
источник

Э

Эрик in Rust — русскоговорящее сообществo
InvalidColumnType(0, Integer)
источник

Э

Эрик in Rust — русскоговорящее сообществo
InvalidColumnType(1, Integer)
источник

🏇

🏇🏻𝔊𝔬𝔩𝔬𝔡𝔫𝔶𝔦... in Rust — русскоговорящее сообществo
я не понимаю ошибку, там типа null прилетает и не соответствие типов?
источник

VG

Vladislav Golub in Rust — русскоговорящее сообществo
🏇🏻𝔊𝔬𝔩𝔬𝔡𝔫𝔶𝔦
я не понимаю ошибку, там типа null прилетает и не соответствие типов?
Я так понимаю, что chat_id не int
источник

Э

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

KR

Kai Ren in Rust — русскоговорящее сообществo
Julian =) Coffee
Смотря на вопросы в чате по макросам кажется, что проще самому парсить токентри макроса как строку, чем юзать syn
Как пишущий макросы регулярно и для всего, ответственно заявляю - нет)
источник

JC

Julian =) Coffee in Rust — русскоговорящее сообществo
Ну вот если регулярно то да
источник

JC

Julian =) Coffee in Rust — русскоговорящее сообществo
Но типо камон, вопросы, как сделать трэйлинг запятую
источник

KR

Kai Ren in Rust — русскоговорящее сообществo
Julian =) Coffee
Ну вот если регулярно то да
Нельзя из-за edge кейсов выкидывать 95% отличного экспириенса.
источник

JC

Julian =) Coffee in Rust — русскоговорящее сообществo
to_string().split(",").into()
источник

KR

Kai Ren in Rust — русскоговорящее сообществo
источник

KR

Kai Ren in Rust — русскоговорящее сообществo
Ну или в Punctuated положить enum из VariantPath и token::Dot2, и после парсинга чекнуть, что Dot2 только последней позиции.
источник

V

Vladimir in Rust — русскоговорящее сообществo
Julian =) Coffee
to_string().split(",").into()
s: x, b: (x,y,z),..
источник

JC

Julian =) Coffee in Rust — русскоговорящее сообществo
Vladimir
s: x, b: (x,y,z),..
тоже про это подумал
источник