How to implement Default trait

Implement Default trait by defining a default() function or using #[derive(Default)] to create standard instances of your type.

Implement the Default trait for your type by defining a default() function that returns a new instance with sensible default values.

use std::default::Default;

struct User {
    username: String,
    active: bool,
}

impl Default for User {
    fn default() -> Self {
        User {
            username: String::from("guest"),
            active: true,
        }
    }
}

Alternatively, use the #[derive(Default)] attribute if all fields already implement Default:

#[derive(Default)]
struct Settings {
    timeout: u32,
    retries: u32,
}

Then call User::default() or Settings::default() to create instances.