From 426dbe861915c1fcfabff8270b18b6845c8423b0 Mon Sep 17 00:00:00 2001 From: David Senk Date: Sat, 7 Sep 2024 15:39:07 -0400 Subject: [PATCH] return rc instead of direct ref --- src/lib.rs | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index f8daeaa..c3322dd 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,14 +1,18 @@ +use std::rc::Rc; +use std::sync::RwLock; pub struct StateOwner { - state: String, + state: RwLock>, } impl StateOwner { pub fn new(state: String) -> StateOwner { - StateOwner { state } + StateOwner { state: RwLock::new(Rc::new(state)) } } - pub fn get_state(&self) -> &str { - &self.state + pub fn get_state(&self) -> Rc { + self.state.read().unwrap().clone() } -} \ No newline at end of file + + +}