oxc-browserslist 4.0.0

Rust-ported Browserslist for Oxc.
Documentation
use crate::data::caniuse::{compression::LazyData, features::Feature};
static KEYS: LazyData<Vec<String>> =
    LazyData::new(include_bytes!("caniuse_feature_keys.bin.deflate"));
static RANGES: &[u32] = &[
    0u32, 93u32, 171u32, 192u32, 238u32, 334u32, 355u32, 376u32, 456u32, 534u32, 612u32, 690u32,
    768u32, 846u32, 914u32, 996u32, 1074u32, 1170u32, 1265u32, 1343u32, 1371u32, 1459u32, 1532u32,
    1607u32, 1677u32, 1784u32, 1871u32, 1981u32, 2072u32, 2174u32, 2225u32, 2288u32, 2366u32,
    2439u32, 2517u32, 2616u32, 2709u32, 2825u32, 2918u32, 2996u32, 3074u32, 3169u32, 3273u32,
    3351u32, 3444u32, 3537u32, 3615u32, 3708u32, 3791u32, 3905u32, 3956u32, 4048u32, 4135u32,
    4186u32, 4298u32, 4381u32, 4479u32, 4593u32, 4704u32, 4797u32, 4894u32, 4980u32, 5049u32,
    5156u32, 5244u32, 5300u32, 5354u32, 5442u32, 5520u32, 5574u32, 5673u32, 5751u32, 5857u32,
    5930u32, 5976u32, 6044u32, 6142u32, 6232u32, 6332u32, 6431u32, 6469u32, 6547u32, 6610u32,
    6669u32, 6747u32, 6829u32, 6887u32, 6949u32, 7027u32, 7091u32, 7150u32, 7208u32, 7286u32,
    7354u32, 7450u32, 7549u32, 7612u32, 7714u32, 7720u32, 7746u32, 7809u32, 7889u32, 7907u32,
    7989u32, 8005u32, 8088u32, 8149u32, 8162u32, 8249u32, 8361u32, 8459u32, 8554u32, 8622u32,
    8700u32, 8758u32, 8836u32, 8924u32, 9022u32, 9131u32, 9221u32, 9284u32, 9297u32, 9310u32,
    9368u32, 9461u32, 9488u32, 9563u32, 9657u32, 9765u32, 9883u32, 9931u32, 10016u32, 10074u32,
    10179u32, 10262u32, 10363u32, 10436u32, 10537u32, 10638u32, 10715u32, 10793u32, 10856u32,
    10976u32, 10977u32, 11077u32, 11155u32, 11170u32, 11248u32, 11346u32, 11416u32, 11489u32,
    11547u32, 11645u32, 11747u32, 11865u32, 11936u32, 11992u32, 12086u32, 12194u32, 12278u32,
    12329u32, 12431u32, 12518u32, 12574u32, 12671u32, 12754u32, 12822u32, 12853u32, 12925u32,
    13022u32, 13097u32, 13170u32, 13248u32, 13326u32, 13421u32, 13517u32, 13617u32, 13703u32,
    13781u32, 13874u32, 13966u32, 14029u32, 14122u32, 14220u32, 14310u32, 14355u32, 14467u32,
    14516u32, 14594u32, 14605u32, 14669u32, 14771u32, 14854u32, 14957u32, 15049u32, 15127u32,
    15211u32, 15212u32, 15290u32, 15347u32, 15440u32, 15528u32, 15571u32, 15667u32, 15767u32,
    15842u32, 15903u32, 15964u32, 16066u32, 16164u32, 16200u32, 16284u32, 16398u32, 16425u32,
    16511u32, 16627u32, 16725u32, 16843u32, 16919u32, 16920u32, 17003u32, 17108u32, 17204u32,
    17277u32, 17375u32, 17471u32, 17577u32, 17655u32, 17741u32, 17834u32, 17870u32, 17948u32,
    18046u32, 18124u32, 18220u32, 18316u32, 18409u32, 18492u32, 18560u32, 18638u32, 18736u32,
    18818u32, 18907u32, 18913u32, 19029u32, 19140u32, 19222u32, 19300u32, 19382u32, 19460u32,
    19546u32, 19624u32, 19711u32, 19724u32, 19808u32, 19890u32, 19990u32, 20099u32, 20192u32,
    20285u32, 20333u32, 20420u32, 20532u32, 20610u32, 20688u32, 20781u32, 20867u32, 20963u32,
    21046u32, 21124u32, 21183u32, 21216u32, 21323u32, 21386u32, 21464u32, 21563u32, 21651u32,
    21749u32, 21857u32, 21962u32, 22064u32, 22137u32, 22234u32, 22340u32, 22454u32, 22550u32,
    22643u32, 22689u32, 22771u32, 22864u32, 22877u32, 22943u32, 23041u32, 23136u32, 23235u32,
    23281u32, 23393u32, 23462u32, 23547u32, 23619u32, 23714u32, 23715u32, 23798u32, 23854u32,
    23870u32, 23966u32, 24034u32, 24070u32, 24158u32, 24269u32, 24357u32, 24457u32, 24555u32,
    24661u32, 24746u32, 24835u32, 24932u32, 25033u32, 25117u32, 25170u32, 25243u32, 25318u32,
    25396u32, 25491u32, 25588u32, 25694u32, 25787u32, 25887u32, 25980u32, 26076u32, 26176u32,
    26264u32, 26350u32, 26401u32, 26479u32, 26566u32, 26577u32, 26590u32, 26606u32, 26684u32,
    26782u32, 26874u32, 26959u32, 27042u32, 27085u32, 27175u32, 27274u32, 27379u32, 27476u32,
    27492u32, 27590u32, 27676u32, 27743u32, 27830u32, 27903u32, 27985u32, 28063u32, 28140u32,
    28196u32, 28280u32, 28302u32, 28422u32, 28423u32, 28534u32, 28632u32, 28706u32, 28818u32,
    28879u32, 28935u32, 28991u32, 29047u32, 29103u32, 29159u32, 29215u32, 29271u32, 29354u32,
    29433u32, 29501u32, 29589u32, 29595u32, 29625u32, 29713u32, 29769u32, 29865u32, 29960u32,
    29966u32, 30063u32, 30159u32, 30267u32, 30353u32, 30446u32, 30541u32, 30563u32, 30658u32,
    30718u32, 30793u32, 30871u32, 30962u32, 30978u32, 31056u32, 31062u32, 31140u32, 31217u32,
    31304u32, 31346u32, 31434u32, 31512u32, 31615u32, 31695u32, 31741u32, 31838u32, 31916u32,
    32009u32, 32102u32, 32180u32, 32233u32, 32239u32, 32336u32, 32401u32, 32444u32, 32517u32,
    32548u32, 32626u32, 32683u32, 32746u32, 32842u32, 32936u32, 33029u32, 33072u32, 33073u32,
    33151u32, 33229u32, 33329u32, 33407u32, 33491u32, 33507u32, 33585u32, 33613u32, 33685u32,
    33783u32, 33885u32, 33976u32, 34002u32, 34080u32, 34168u32, 34254u32, 34358u32, 34455u32,
    34526u32, 34604u32, 34694u32, 34772u32, 34852u32, 34945u32, 34996u32, 35073u32, 35160u32,
    35255u32, 35350u32, 35461u32, 35529u32, 35550u32, 35655u32, 35732u32, 35814u32, 35830u32,
    35866u32, 35948u32, 36016u32, 36088u32, 36186u32, 36248u32, 36296u32, 36354u32, 36449u32,
    36510u32, 36596u32, 36691u32, 36774u32, 36862u32, 36873u32, 36904u32, 36982u32, 37086u32,
    37196u32, 37296u32, 37339u32, 37453u32, 37543u32, 37641u32, 37747u32, 37836u32, 37889u32,
    37962u32, 38050u32, 38128u32, 38161u32, 38162u32, 38240u32, 38335u32, 38431u32, 38499u32,
    38584u32, 38682u32, 38762u32, 38837u32, 38935u32, 39017u32, 39102u32, 39193u32, 39286u32,
    39355u32, 39446u32, 39550u32, 39595u32, 39673u32, 39751u32, 39829u32, 39893u32, 39973u32,
    40073u32, 40164u32, 40252u32, 40334u32, 40417u32, 40483u32, 40578u32, 40596u32, 40655u32,
    40713u32, 40814u32, 40907u32, 40975u32, 41053u32, 41116u32, 41179u32, 41237u32, 41278u32,
    41319u32, 41382u32, 41445u32, 41508u32, 41571u32, 41612u32, 41675u32, 41738u32, 41784u32,
    41847u32, 41930u32, 42023u32, 42113u32, 42176u32, 42222u32, 42249u32, 42301u32, 42381u32,
    42449u32, 42542u32, 42620u32, 42669u32, 42685u32, 42711u32, 42805u32, 42816u32, 42909u32,
    43014u32, 43082u32, 43123u32, 43141u32, 43234u32, 43329u32, 43360u32, 43438u32, 43531u32,
    43611u32, 43714u32, 43832u32, 43930u32, 44031u32, 44142u32, 44238u32, 44244u32, 44358u32,
    44408u32,
];
pub fn get_feature_stat(name: &str) -> Option<Feature> {
    let index = KEYS.get().binary_search_by(|key| key.as_str().cmp(name)).ok()?;
    Some(Feature::new(RANGES[index], RANGES[index + 1]))
}