I found this funny.

The context is as explained by @laund@hachyderm.io

the issue is that you can’t return from inside a closure, since the closure might be called later/elsewhere

and this post was the asnwer to the question by @antonok@fosstodon.org

you got me curious what the record for the longest ? operator chain on crates.io is

Original post: https://fosstodon.org/users/antonok/statuses/111134824451525448

  • 1984@lemmy.today
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    I’m writing my Rust wrong… I have match statements everywhere to the degree that it’s cluttering up everything.

    • Aloso@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      1 year ago

      If all you do in the Err(e) => ... match arm is returning the error, then you absolutely should use the ? operator instead.

      If the match arm also converts the error type into another error type, implement the From trait for the conversion, then you can use ? as well.

      If you want to add more information to the error, you can use .map_err(...)?. Or, if you’re using the anyhow crate, .with_context(...)?.