/* define */ struct User { username: String, email: String, sign_in_count: u64, active: bool, } /* tuple structs */ struct Color(i32, i32, i32); struct Point(i32, i32, i32); fn main() { /* create an instance */ let mut user1 = User { email: String::from("someone@example.com"), username: String::from("someusername123"), active: true, sign_in_count: 1, }; user1.email = String::from("anotheremal@example.com"); /* update syntax */ let user2 = User { email: String::from("another@email.com"), username: String::from("anotherusername567"), ..user1 }; let black = Color(0, 0, 0); let origin = Point(0, 0, 0); } fn build_user(email: String, username: String) -> User { User { email, /* field init shorthad */ username, active: true, sign_in_count: 1, } }