Use And Change Mutex Value In A Rust Struct Object

I'm still new to rust. There might be different/better ways to do this, but this is working for me for a cache

rust

use std::sync::Mutex;

#[derive(Debug)]
pub struct Widget {
    pub holder: Mutex<u8>,
}

impl Widget {
    pub fn new(holder: Mutex<u8>) -> Widget {
        Widget { holder }
    }
    pub fn move_it(&self) {
        let mut pinger = self.holder.lock().unwrap();
        *pinger = 7;
    }
}

fn main() {
    let holder = Mutex::new(5);
    let w = Widget { holder };
    println!("m = {:?}", w.holder);
    w.move_it();
    println!("m = {:?}", w.holder);
}
            
m = Mutex { data: 5, poisoned: false, .. }
m = Mutex { data: 7, poisoned: false, .. }