From 83402435432165bb81eba82aba3fb6bce49870aa Mon Sep 17 00:00:00 2001 From: Boshen <1430279+Boshen@users.noreply.github.com> Date: Tue, 5 Nov 2024 13:45:12 +0000 Subject: [PATCH] refactor(transformer): rename `Query` to `BrowserslistQuery` (#7143) --- .../oxc_transformer/src/options/babel/env/mod.rs | 2 -- .../src/options/babel/env/targets.rs | 7 +++---- crates/oxc_transformer/src/options/babel/mod.rs | 2 +- .../env/query.rs => browserslist_query.rs} | 16 ++++++++-------- .../src/options/engine_targets.rs | 4 ++-- crates/oxc_transformer/src/options/mod.rs | 3 +++ 6 files changed, 17 insertions(+), 17 deletions(-) rename crates/oxc_transformer/src/options/{babel/env/query.rs => browserslist_query.rs} (78%) diff --git a/crates/oxc_transformer/src/options/babel/env/mod.rs b/crates/oxc_transformer/src/options/babel/env/mod.rs index 1a7a6290c..e3ebc74b2 100644 --- a/crates/oxc_transformer/src/options/babel/env/mod.rs +++ b/crates/oxc_transformer/src/options/babel/env/mod.rs @@ -1,12 +1,10 @@ mod data; -mod query; mod targets; use serde::Deserialize; pub use self::{ data::{bugfix_features, features}, - query::Query, targets::BabelTargets, }; diff --git a/crates/oxc_transformer/src/options/babel/env/targets.rs b/crates/oxc_transformer/src/options/babel/env/targets.rs index e47e1742e..5432d93bd 100644 --- a/crates/oxc_transformer/src/options/babel/env/targets.rs +++ b/crates/oxc_transformer/src/options/babel/env/targets.rs @@ -5,8 +5,7 @@ use oxc_diagnostics::Error; pub use browserslist::Version; -use super::query::Query; -use crate::options::EngineTargets; +use crate::options::{BrowserslistQuery, EngineTargets}; /// #[derive(Debug, Deserialize)] @@ -37,8 +36,8 @@ impl TryFrom for EngineTargets { type Error = Error; fn try_from(value: BabelTargets) -> Result { match value { - BabelTargets::String(s) => Query::Single(s).exec(), - BabelTargets::Array(v) => Query::Multiple(v).exec(), + BabelTargets::String(s) => BrowserslistQuery::Single(s).exec(), + BabelTargets::Array(v) => BrowserslistQuery::Multiple(v).exec(), BabelTargets::Map(map) => { let mut targets = Self::default(); for (key, value) in map { diff --git a/crates/oxc_transformer/src/options/babel/mod.rs b/crates/oxc_transformer/src/options/babel/mod.rs index d100aa98f..a185ddf95 100644 --- a/crates/oxc_transformer/src/options/babel/mod.rs +++ b/crates/oxc_transformer/src/options/babel/mod.rs @@ -8,7 +8,7 @@ use serde::{de::DeserializeOwned, Deserialize}; use crate::CompilerAssumptions; -pub use self::env::{BabelEnvOptions, BabelTargets, Query}; +pub use self::env::{BabelEnvOptions, BabelTargets}; use self::{plugins::BabelPlugins, presets::BabelPresets}; /// Babel options diff --git a/crates/oxc_transformer/src/options/babel/env/query.rs b/crates/oxc_transformer/src/options/browserslist_query.rs similarity index 78% rename from crates/oxc_transformer/src/options/babel/env/query.rs rename to crates/oxc_transformer/src/options/browserslist_query.rs index 811b646d9..da0233191 100644 --- a/crates/oxc_transformer/src/options/babel/env/query.rs +++ b/crates/oxc_transformer/src/options/browserslist_query.rs @@ -9,17 +9,17 @@ use super::EngineTargets; #[derive(Debug, Clone, Deserialize, Eq, PartialEq, PartialOrd, Ord, Hash)] #[serde(untagged)] -pub enum Query { +pub enum BrowserslistQuery { Single(String), Multiple(Vec), } -fn cache() -> &'static DashMap { - static CACHE: OnceLock> = OnceLock::new(); +fn cache() -> &'static DashMap { + static CACHE: OnceLock> = OnceLock::new(); CACHE.get_or_init(DashMap::new) } -impl Query { +impl BrowserslistQuery { pub fn exec(&self) -> Result { if let Some(v) = cache().get(self) { return Ok(v.clone()); @@ -32,14 +32,14 @@ impl Query { }; let result = match self { - Query::Single(ref s) => { + BrowserslistQuery::Single(ref s) => { if s.is_empty() { browserslist::resolve(&["defaults"], &options) } else { browserslist::resolve(&[s], &options) } } - Query::Multiple(ref s) => browserslist::resolve(s, &options), + BrowserslistQuery::Multiple(ref s) => browserslist::resolve(s, &options), }; let result = match result { @@ -63,11 +63,11 @@ impl Query { #[cfg(test)] mod tests { - use super::Query; + use super::BrowserslistQuery; #[test] fn test_empty() { - let res = Query::Single(String::new()).exec().unwrap(); + let res = BrowserslistQuery::Single(String::new()).exec().unwrap(); assert!(!res.is_any_target(), "empty query should return non-empty result"); } } diff --git a/crates/oxc_transformer/src/options/engine_targets.rs b/crates/oxc_transformer/src/options/engine_targets.rs index 1a76586e0..fe1ac2ac3 100644 --- a/crates/oxc_transformer/src/options/engine_targets.rs +++ b/crates/oxc_transformer/src/options/engine_targets.rs @@ -3,7 +3,7 @@ use serde::Deserialize; use oxc_diagnostics::Error; -use super::babel::{BabelTargets, Query}; +use super::{babel::BabelTargets, BrowserslistQuery}; /// A map of engine names to minimum supported versions. #[derive(Debug, Default, Clone, Eq, PartialEq, Deserialize)] @@ -27,7 +27,7 @@ impl EngineTargets { /// /// * Query is invalid. pub fn try_from_query(query: &str) -> Result { - Query::Single(query.to_string()).exec() + BrowserslistQuery::Single(query.to_string()).exec() } /// Returns true if all fields are [None]. diff --git a/crates/oxc_transformer/src/options/mod.rs b/crates/oxc_transformer/src/options/mod.rs index bf49cab3e..1954ed1d6 100644 --- a/crates/oxc_transformer/src/options/mod.rs +++ b/crates/oxc_transformer/src/options/mod.rs @@ -1,4 +1,6 @@ pub mod babel; + +mod browserslist_query; mod engine_targets; mod env; @@ -24,6 +26,7 @@ use crate::{ }; pub use self::{ + browserslist_query::BrowserslistQuery, engine_targets::EngineTargets, env::{ESTarget, EnvOptions}, };