this post was submitted on 16 Oct 2024
58 points (96.8% liked)

Rust

5877 readers
85 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

[email protected]

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 1 year ago
MODERATORS
 

If we were to create a Rust version of this page for Haskell, what cool programming techniques would you add to it?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 3 points 1 day ago (1 children)

What if I specify the wrong type? let retrieved = storage.get::<SomeOtherType>();?

Is it a runtime error or a compile time error?

[–] [email protected] 6 points 1 day ago (1 children)
[–] [email protected] 2 points 1 day ago* (last edited 1 day ago)

Well, you would determine the TypeId of SomeOtherType, then search for that as the key in your HashMap and get back a None, because no entry exists and then you'd hand that back to the user.
I guess, my little usage example should've included handling of an Option value...

So, it's only a runtime error, if you decide to .unwrap() or similar.