From 4157af997947a3e3354554ad82d449be38af8f40 Mon Sep 17 00:00:00 2001 From: tcmal Date: Sun, 4 Jun 2023 19:55:02 +0000 Subject: use std oncelock --- incria/Cargo.lock | 7 ------- incria/Cargo.toml | 1 - incria/examples/spreadsheet.rs | 5 ++--- incria/src/deps.rs | 6 ++---- 4 files changed, 4 insertions(+), 15 deletions(-) (limited to 'incria') diff --git a/incria/Cargo.lock b/incria/Cargo.lock index fa39449..32dc3f1 100644 --- a/incria/Cargo.lock +++ b/incria/Cargo.lock @@ -21,7 +21,6 @@ dependencies = [ name = "incria" version = "0.1.0" dependencies = [ - "once_cell", "tokio", ] @@ -41,12 +40,6 @@ dependencies = [ "libc", ] -[[package]] -name = "once_cell" -version = "1.17.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" - [[package]] name = "pin-project-lite" version = "0.2.9" diff --git a/incria/Cargo.toml b/incria/Cargo.toml index 1ff3824..608c926 100644 --- a/incria/Cargo.toml +++ b/incria/Cargo.toml @@ -4,7 +4,6 @@ version = "0.1.0" edition = "2021" [dependencies] -once_cell = "1.17.1" tokio = { version = "1.28.1", features = ["sync", "rt"] } [dev-dependencies] diff --git a/incria/examples/spreadsheet.rs b/incria/examples/spreadsheet.rs index 135ca80..5c377e3 100644 --- a/incria/examples/spreadsheet.rs +++ b/incria/examples/spreadsheet.rs @@ -1,11 +1,10 @@ -use std::{future::Future, pin::Pin}; +use std::{future::Future, pin::Pin, sync::OnceLock}; use incria::{ deps, thunk::{Thunk, ThunkMapper}, Mapper, }; -use once_cell::sync::OnceCell; type Key = (usize, usize); type Value = usize; @@ -29,7 +28,7 @@ impl Thunk for CellThunk { } type CellMapping = ThunkMapper; -static CELL_MAPPING: OnceCell = OnceCell::new(); +static CELL_MAPPING: OnceLock = OnceLock::new(); fn cell_mapping() -> &'static CellMapping { CELL_MAPPING.get_or_init(CellMapping::default) } diff --git a/incria/src/deps.rs b/incria/src/deps.rs index d72e684..acc39f1 100644 --- a/incria/src/deps.rs +++ b/incria/src/deps.rs @@ -13,11 +13,9 @@ use std::{ collections::{HashMap, VecDeque}, fmt::Write, future::Future, - sync::Mutex, + sync::{Mutex, OnceLock}, }; -use once_cell::sync::OnceCell; - /// Identifier of a node, unique across a program run. pub type NodeId = usize; @@ -112,7 +110,7 @@ struct NodeInfo { } /// The global instance of the dependency tracker -static DEP_TRACKER: OnceCell = OnceCell::new(); +static DEP_TRACKER: OnceLock = OnceLock::new(); fn dep_tracker() -> &'static DepTracker { DEP_TRACKER.get_or_init(DepTracker::default) } -- cgit v1.2.3