mirror of
https://github.com/notohh/rustlings.git
synced 2024-10-30 08:49:12 -04:00
enums3 solution
This commit is contained in:
parent
a2dfbd86da
commit
020711fa97
3 changed files with 28 additions and 3 deletions
|
@ -1,6 +1,6 @@
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
enum Message {
|
enum Message {
|
||||||
// TODO: define the different variants used below
|
// TODO: Define the different variants used below.
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Message {
|
impl Message {
|
||||||
|
|
|
@ -451,7 +451,7 @@ dir = "08_enums"
|
||||||
test = false
|
test = false
|
||||||
hint = """
|
hint = """
|
||||||
You can create enumerations that have different variants with different types
|
You can create enumerations that have different variants with different types
|
||||||
such as no data, anonymous structs, a single string, tuples, ...etc"""
|
such as no data, anonymous structs, a single string, tuples, etc."""
|
||||||
|
|
||||||
[[exercises]]
|
[[exercises]]
|
||||||
name = "enums3"
|
name = "enums3"
|
||||||
|
|
|
@ -1 +1,26 @@
|
||||||
// Solutions will be available before the stable release. Thank you for testing the beta version 🥰
|
#[derive(Debug)]
|
||||||
|
enum Message {
|
||||||
|
Move { x: i64, y: i64 },
|
||||||
|
Echo(String),
|
||||||
|
ChangeColor(u8, u8, u8),
|
||||||
|
Quit,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Message {
|
||||||
|
fn call(&self) {
|
||||||
|
println!("{:?}", self);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
let messages = [
|
||||||
|
Message::Move { x: 10, y: 30 },
|
||||||
|
Message::Echo(String::from("hello world")),
|
||||||
|
Message::ChangeColor(200, 255, 255),
|
||||||
|
Message::Quit,
|
||||||
|
];
|
||||||
|
|
||||||
|
for message in &messages {
|
||||||
|
message.call();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue