mirror of
https://github.com/rust-lang/rustlings.git
synced 2024-12-26 00:00:03 +03:00
enums3 solution
This commit is contained in:
parent
a2dfbd86da
commit
020711fa97
|
@ -1,6 +1,6 @@
|
|||
#[derive(Debug)]
|
||||
enum Message {
|
||||
// TODO: define the different variants used below
|
||||
// TODO: Define the different variants used below.
|
||||
}
|
||||
|
||||
impl Message {
|
||||
|
|
|
@ -451,7 +451,7 @@ dir = "08_enums"
|
|||
test = false
|
||||
hint = """
|
||||
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]]
|
||||
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