summaryrefslogtreecommitdiffstats
path: root/compiler/rustc_baked_icu_data/src/data/any.rs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rustc_baked_icu_data/src/data/any.rs')
-rw-r--r--compiler/rustc_baked_icu_data/src/data/any.rs42
1 files changed, 42 insertions, 0 deletions
diff --git a/compiler/rustc_baked_icu_data/src/data/any.rs b/compiler/rustc_baked_icu_data/src/data/any.rs
new file mode 100644
index 000000000..e8e99be93
--- /dev/null
+++ b/compiler/rustc_baked_icu_data/src/data/any.rs
@@ -0,0 +1,42 @@
+// @generated
+impl AnyProvider for BakedDataProvider {
+ fn load_any(&self, key: DataKey, req: DataRequest) -> Result<AnyResponse, DataError> {
+ const ANDLISTV1MARKER: ::icu_provider::DataKeyHash =
+ ::icu_list::provider::AndListV1Marker::KEY.hashed();
+ const COLLATIONFALLBACKSUPPLEMENTV1MARKER: ::icu_provider::DataKeyHash =
+ ::icu_provider_adapters::fallback::provider::CollationFallbackSupplementV1Marker::KEY
+ .hashed();
+ const LOCALEFALLBACKLIKELYSUBTAGSV1MARKER: ::icu_provider::DataKeyHash =
+ ::icu_provider_adapters::fallback::provider::LocaleFallbackLikelySubtagsV1Marker::KEY
+ .hashed();
+ const LOCALEFALLBACKPARENTSV1MARKER: ::icu_provider::DataKeyHash =
+ ::icu_provider_adapters::fallback::provider::LocaleFallbackParentsV1Marker::KEY
+ .hashed();
+ #[allow(clippy::match_single_binding)]
+ match key.hashed() {
+ ANDLISTV1MARKER => list::and_v1::DATA
+ .get_by(|k| req.locale.strict_cmp(k.as_bytes()).reverse())
+ .copied()
+ .map(AnyPayload::from_static_ref)
+ .ok_or(DataErrorKind::MissingLocale),
+ COLLATIONFALLBACKSUPPLEMENTV1MARKER => fallback::supplement::co_v1::DATA
+ .get_by(|k| req.locale.strict_cmp(k.as_bytes()).reverse())
+ .copied()
+ .map(AnyPayload::from_static_ref)
+ .ok_or(DataErrorKind::MissingLocale),
+ LOCALEFALLBACKLIKELYSUBTAGSV1MARKER => fallback::likelysubtags_v1::DATA
+ .get_by(|k| req.locale.strict_cmp(k.as_bytes()).reverse())
+ .copied()
+ .map(AnyPayload::from_static_ref)
+ .ok_or(DataErrorKind::MissingLocale),
+ LOCALEFALLBACKPARENTSV1MARKER => fallback::parents_v1::DATA
+ .get_by(|k| req.locale.strict_cmp(k.as_bytes()).reverse())
+ .copied()
+ .map(AnyPayload::from_static_ref)
+ .ok_or(DataErrorKind::MissingLocale),
+ _ => Err(DataErrorKind::MissingDataKey),
+ }
+ .map_err(|e| e.with_req(key, req))
+ .map(|payload| AnyResponse { payload: Some(payload), metadata: Default::default() })
+ }
+}