From 30d7a487d6cae5784ef84696d451902c3acffc32 Mon Sep 17 00:00:00 2001 From: Joe Ardent Date: Mon, 3 Jun 2024 18:14:15 -0700 Subject: [PATCH] tweak --- nebkor-maelstrom/src/lib.rs | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/nebkor-maelstrom/src/lib.rs b/nebkor-maelstrom/src/lib.rs index ebcf869..fe12e56 100644 --- a/nebkor-maelstrom/src/lib.rs +++ b/nebkor-maelstrom/src/lib.rs @@ -2,7 +2,7 @@ use std::{ collections::HashMap, io::{BufRead, Write}, sync::{ - atomic::{AtomicU64, AtomicUsize, Ordering}, + atomic::{AtomicU64, Ordering}, mpsc::{channel, Receiver, Sender}, Arc, Mutex, OnceLock, }, @@ -16,15 +16,11 @@ use serde_json::Value; pub mod kv; -pub type DynNode = Arc>; +pub type NodeyNodeFace = Arc>; pub type OnInit = Box; - pub type Result = std::result::Result; - pub type RpcPromise = Receiver; -static MSG_ID: AtomicU64 = AtomicU64::new(0); - pub trait Node { fn handle(&mut self, runner: &Runner, msg: Message); } @@ -62,23 +58,21 @@ impl Network { } pub struct Runner { - node: DynNode, + node: NodeyNodeFace, node_id: OnceLock, nodes: OnceLock>, network: OnceLock, backdoor: OnceLock>, - steps: Arc, } impl Runner { - pub fn new(node: DynNode) -> Self { + pub fn new(node: NodeyNodeFace) -> Self { Runner { node, nodes: OnceLock::new(), node_id: OnceLock::new(), network: OnceLock::new(), backdoor: OnceLock::new(), - steps: Arc::new(AtomicUsize::new(0)), } } @@ -175,10 +169,6 @@ impl Runner { self.nodes.get().unwrap() } - pub fn steps(&self) -> usize { - self.steps.load(Ordering::SeqCst) - } - pub fn init(&self, msg: &Message) { let node_id = msg .body @@ -245,3 +235,5 @@ pub fn mk_payload(payload: &[(&str, Value)]) -> Payload { .map(|p| (p.0.to_string(), p.1.clone())) .collect() } + +static MSG_ID: AtomicU64 = AtomicU64::new(0);