main.rs (1071B)
1 struct User { 2 username: String, 3 email: String, 4 sign_in_count: u64, 5 active: bool, 6 } 7 8 fn new_user(email: String, username: String) -> User { 9 User { 10 email, // == email: email, because names match 11 username, //== username: username, 12 sign_in_count: 0, 13 active: false, 14 } 15 } 16 17 struct rgb(u16, u16, u16); 18 struct point(u16, u16, u16); 19 20 fn main() { 21 let mut user1 = User { 22 username: String::from("strongbad"), 23 email: String::from("strongbad@homestarrunner.com"), 24 sign_in_count: 1, 25 active: true, 26 }; 27 28 println!("email={}", user1.email); 29 user1.email = String::from("djmankewicz@homestarrunner.com"); 30 println!("email={}", user1.email); 31 32 let user2 = new_user(String::from("gunship@hegemon.com"), String::from("champeener") ); 33 println!("email={}", user2.email); 34 35 let user3 = User { 36 email: String::from("systemerror@paradise.com"), 37 ..user2 38 }; 39 println!("email={}", user3.email); 40 41 let white = rgb(255, 255, 255); 42 let origin = point(0, 0, 0); 43 }