rustlings

solving rustlings ft. dracuxan
git clone [email protected]:dracuxan/rustlings.git
Log | Files | Refs

enums2.rs (638B)


      1 #[derive(Debug)]
      2 struct Point {
      3     x: u64,
      4     y: u64,
      5 }
      6 
      7 #[derive(Debug)]
      8 enum Message {
      9     Resize { width: u64, height: u64 },
     10     Move(Point),
     11     Echo(String),
     12     ChangeColor(u8, u8, u8),
     13     Quit,
     14 }
     15 
     16 impl Message {
     17     fn call(&self) {
     18         println!("{self:?}");
     19     }
     20 }
     21 
     22 fn main() {
     23     let messages = [
     24         Message::Resize {
     25             width: 10,
     26             height: 30,
     27         },
     28         Message::Move(Point { x: 10, y: 15 }),
     29         Message::Echo(String::from("hello world")),
     30         Message::ChangeColor(200, 255, 255),
     31         Message::Quit,
     32     ];
     33 
     34     for message in &messages {
     35         message.call();
     36     }
     37 }