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-client/src/chat.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'azalea-client/src') diff --git a/azalea-client/src/chat.rs b/azalea-client/src/chat.rs index 3a0efa95..01236630 100755 --- a/azalea-client/src/chat.rs +++ b/azalea-client/src/chat.rs @@ -9,8 +9,6 @@ use azalea_protocol::packets::game::{ serverbound_chat_command_packet::ServerboundChatCommandPacket, serverbound_chat_packet::ServerboundChatPacket, }; -use lazy_static::lazy_static; -use regex::Regex; use std::time::{SystemTime, UNIX_EPOCH}; /// A chat packet, either a system message or a chat message. @@ -20,6 +18,13 @@ pub enum ChatPacket { Player(Box), } +macro_rules! regex { + ($re:literal $(,)?) => {{ + static RE: once_cell::sync::OnceCell = once_cell::sync::OnceCell::new(); + RE.get_or_init(|| regex::Regex::new($re).unwrap()) + }}; +} + impl ChatPacket { /// Get the message shown in chat for this packet. pub fn message(&self) -> Component { @@ -49,11 +54,7 @@ impl ChatPacket { } // It's a system message, so we'll have to match the content // with regex - lazy_static! { - static ref ANGLE_BRACKETS_RE: Regex = - Regex::new("^<([a-zA-Z_0-9]{1,16})> (.+)$").unwrap(); - } - if let Some(m) = ANGLE_BRACKETS_RE.captures(&message) { + if let Some(m) = regex!("^<([a-zA-Z_0-9]{1,16})> (.+)$").captures(&message) { return (Some(m[1].to_string()), m[2].to_string()); } -- cgit v1.2.3