rust struct значения по умолчанию

struct Point {
    x: i32,
    y: i32
}

impl Default for Point {
    fn default() -> Point {
        Point {
            x: 0,
            y: 1
        }
    }
}

fn main() {
    // initialize a default point
    let p1 = Point { ..Default::default() };

    // initialize a point with default value for all fields except 
    // y that is set to 0
    let p2 = Point { y: 0, ..Default::default() };
    
    println!("{}, {}", p1.x, p1.y); // 0, 1
    println!("{}, {}", p2.x, p2.y); // 0, 0
	
}
PeruTilli