swc_ecma_preset_env/corejs3/
compat.rs1use once_cell::sync::Lazy;
4use rustc_hash::FxHashMap;
5
6use crate::{util::PooledStr, Versions};
7
8include!(concat!(env!("OUT_DIR"), "/corejs3_compat/lib.rs"));
9
10pub static DATA: Lazy<FxHashMap<&str, Versions>> = Lazy::new(|| {
11 FEATURES
15 .iter()
16 .map(|&(feature, start, end)| {
17 let start = start as usize;
18 let end = end as usize;
19 let mut versions = Versions::default();
20 for (browser, version) in &VERSION_STORE[start..end] {
21 let version = version.as_str().parse().unwrap();
22 versions.insert(browser.as_str(), Some(version));
23 }
24 (feature.as_str(), versions)
25 })
26 .collect()
27});