rustHow to use enum as hashmap key in Rust
Enums in Rust can be used as hashmap keys by implementing the Eq and Hash traits. This can be done by adding #[derive(Eq, Hash)] to the enum definition. For example:
#[derive(Eq, Hash)]
enum Color {
Red,
Blue,
Green,
}
fn main() {
use std::collections::HashMap;
let mut colors = HashMap::new();
colors.insert(Color::Red, "red");
colors.insert(Color::Blue, "blue");
colors.insert(Color::Green, "green");
println!("{:?}", colors);
}
The output of this code is {Color::Red: "red", Color::Blue: "blue", Color::Green: "green"}. The #[derive(Eq, Hash)] annotation allows the enum to be used as a key in the hashmap.
Helpful links
Related
More of Rust
- Generator example in Rust
- How to replace a capture group using Rust regex?
- How to match a URL with a regex in Rust?
- How to use binary regex in Rust?
- How to use regex lookahead in Rust?
- How to make regex case insensitive in Rust?
- Regex example to match multiline string in Rust?
- How to use regex to match a double quote in Rust?
- Yield example in Rust
- How to use a tuple as a key in a Rust HashMap?
See more codes...