• display_name@lemmy.zip
    link
    fedilink
    arrow-up
    6
    ·
    2 days ago

    I’m trying to come up with a good pun how ownership and safety could have prevented this but…

    use std::sync::OnceLock;

    #[derive(Debug)] struct BrainCell { in_use: bool, }

    static BRAIN_CELL: OnceLock<BrainCell> = OnceLock::new();

    fn get_brain_cell() -> &'static BrainCell BRAIN_CELL.get_or_init(| { println!(“Allocating brain power… this might take a while.”); BrainCell { in_use: true }) }