minus-squaredisplay_name@lemmy.ziptoProgrammer Humor@programming.dev•You can take it from my cold dead pincerslinkfedilinkarrow-up6·1 day agoI’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 }) } linkfedilink
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( }) }