From 619984fa33aec8b9629770928c51ee81a3d3a63f Mon Sep 17 00:00:00 2001 From: mat <27899617+mat-1@users.noreply.github.com> Date: Sat, 19 Nov 2022 15:21:54 -0600 Subject: Replace lazy_static with once_cell::sync::Lazy (#43) * Remove lazy_static in azalea-chat * replace lazy_static with once_cell everywhere * fix * fix import * ignore a clippy warning in shape codegen --- azalea-language/Cargo.toml | 2 +- azalea-language/src/lib.rs | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'azalea-language') diff --git a/azalea-language/Cargo.toml b/azalea-language/Cargo.toml index 942fbad0..8696d30e 100755 --- a/azalea-language/Cargo.toml +++ b/azalea-language/Cargo.toml @@ -9,7 +9,7 @@ version = "0.3.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -lazy_static = "1.4.0" +once_cell = "1.16.0" serde = "1.0.137" serde_json = "1.0.81" # tokio = {version = "^1.21.2", features = ["fs"]} diff --git a/azalea-language/src/lib.rs b/azalea-language/src/lib.rs index b9905e54..468bcede 100755 --- a/azalea-language/src/lib.rs +++ b/azalea-language/src/lib.rs @@ -1,6 +1,6 @@ //! Translate Minecraft strings from their id. -use lazy_static::lazy_static; +use once_cell::sync::Lazy; use std::io::Read; use std::path::Path; use std::{collections::HashMap, fs::File}; @@ -31,16 +31,16 @@ use std::{collections::HashMap, fs::File}; // Language object that we passed around everywhere which is not convenient // The code above is kept in case I come up with a better solution -lazy_static! { - pub static ref STORAGE: HashMap = serde_json::from_str(&{ +pub static STORAGE: Lazy> = Lazy::new(|| { + serde_json::from_str(&{ let src_dir = Path::new(concat!(env!("CARGO_MANIFEST_DIR"), "/src/en_us.json")); let mut file = File::open(src_dir).unwrap(); let mut contents = String::new(); file.read_to_string(&mut contents).unwrap(); contents }) - .unwrap(); -} + .unwrap() +}); pub fn get(key: &str) -> Option<&str> { STORAGE.get(key).map(|s| s.as_str()) -- cgit v1.2.3