this post was submitted on 10 Jul 2023
21 points (78.4% liked)

Programmer Humor

32495 readers
553 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
error[E0277]: the trait bound `{integer}: Buy` is not satisfied
  --> src/main.rs:4:13
   |
2  |     buy(milk);
3  |     if they_have_eggs {
4  |         buy(6);
   |        
***
^ the trait `Buy` is not implemented for `{integer}`
   |         |
   |         required by a bound introduced by this call
   |
note: required by a bound in `buy`
  --> src/main.rs:11:22
   |
11 | fn buy(product: impl Buy) {
   |                      ^^^ required by this bound in `buy`

For more information about this error, try `rustc --explain E0277`.
error: could not compile `dad` (bin "errand") due to previous error
you are viewing a single comment's thread
view the rest of the comments
[–] dullbananas@lemmy.ca 2 points 1 year ago (1 children)
fn main(){
    let mut input = std::io::stdin().lines();
    let num0 = input.next().unwrap().unwrap();
    let num1 = input.next().unwrap().unwrap();
    println!("{}", num0 + &num1);
}
[–] Noodlez@programming.dev 4 points 1 year ago (1 children)

Nothing makes me cringe more than seeing 4 unwraps in a row in Rust code. Like are you sure those errors will never happen? Do you really wanna panic?

And then I do it in my own code and I get it again. Rust error handling sucks ass. (I love Rust btw)

[–] TALD@lemmy.fmhy.ml 3 points 1 year ago

I unwrap like a mad man while building a proof of concept. It's the same as approaching say a multithreaded program. You always get the single thread to work first and then worry about adding thread handling later.

Same as result and option handling, that's for when I want to stabilise my code before finalising for release.