Size: a a a

2020 November 04

GT

Greenfield Tea in Rust Beginners
Хотя при этом вывод приглашения ко вводу делается раньше, чем запрос ввода
источник

DN

Denis Nevmerzhitskii in Rust Beginners
Greenfield Tea
Хотя при этом вывод приглашения ко вводу делается раньше, чем запрос ввода
io::stdout().flush()
источник

DN

Denis Nevmerzhitskii in Rust Beginners
После print!
источник

GT

Greenfield Tea in Rust Beginners
Благодарю
источник

T

Tommy in Rust Beginners
Slava Sokolovsky
Можно и так, но должна быть какая-то best practice, чтобы однозначно определить
В однопоточном коде?
источник

A

Andrew in Rust Beginners
Возвращаешь result... Error из sqlx
А компилятор тебе говорит что не знает как обработать ошибку env::error
Надо сделать свой тип ошибки
источник

A

Andrew in Rust Beginners
enum MyError
Sqlx(sqlx::error),
Var(env::Error),

Что то типа такого
источник

A

Andrew in Rust Beginners
Сделать impl From<env::error> for MyError
источник

GT

Greenfield Tea in Rust Beginners
Код:
let result: f32 = a.trim().parse::<f32>()? + b.trim().parse::<f32>()?;
Ошибка:
the ? operator can only be used in a function that returns Result or Option (or another type that implements std::ops::Try)

cannot use the ? operator in a function that returns ()

help: the trait std::ops::Try is not implemented for ()
note: required by std::ops::Try::from_error
источник

GT

Greenfield Tea in Rust Beginners
Что делать?
Весь гугл перелазил, ничего
источник

GT

Greenfield Tea in Rust Beginners
Если посмотреть на сигнатуру str::parse(), то он выдаёт Result, но тут пишет, что возвращает ()
Бред какой-то
источник

r

red75prime in Rust Beginners
Greenfield Tea
Если посмотреть на сигнатуру str::parse(), то он выдаёт Result, но тут пишет, что возвращает ()
Бред какой-то
> cannot use the ? operator in a function that returns ()

Нужно смотреть на сигнатуру функции, в которой этот код находится. ? выполняет ранний возврат ошибки. Eсли функция не возвращает Result (или Option), то вернуть ошибку не получится.
источник

GT

Greenfield Tea in Rust Beginners
источник

r

red75prime in Rust Beginners
Нужно смотреть на сигнатуру функции, в которой находится код let result: f32 = a.trim().parse::<f32>()? + b.trim().parse::<f32>()?;
источник

GT

Greenfield Tea in Rust Beginners
А, боже, понял
А почему именно так? Не совсем понимаю при чём тут сигнатура функции, в которой код выполняется, если по логике я делаю проверку результата другой функции?
источник

GT

Greenfield Tea in Rust Beginners
Если можно, буду рад ссылке где про это почитать можно.
источник

РХ

Ринат Харисов... in Rust Beginners
Greenfield Tea
Если можно, буду рад ссылке где про это почитать можно.
как раз сегодня только читал

https://github.com/Dhghomon/easy_rust#using-files
источник

GT

Greenfield Tea in Rust Beginners
Благодарю)
источник

KK

Kirill (Cykooz) Kuzm... in Rust Beginners
Greenfield Tea
А, боже, понял
А почему именно так? Не совсем понимаю при чём тут сигнатура функции, в которой код выполняется, если по логике я делаю проверку результата другой функции?
Потому что ? делает
return Err(...);
если была ошибка. Вот и догадайся как этот return соотносится с сигнатурой функции, внутри которой он находится.
источник

GT

Greenfield Tea in Rust Beginners
Kirill (Cykooz) Kuzminykh
Потому что ? делает
return Err(...);
если была ошибка. Вот и догадайся как этот return соотносится с сигнатурой функции, внутри которой он находится.
Ааа, понял
источник