// @generated /// Implement `DataProvider` on the given struct using the data /// hardcoded in this file. This allows the struct to be used with /// `icu`'s `_unstable` constructors. /// /// Using this implementation will embed the following data in the binary's data segment: /// * 532B[^1] for the singleton data struct /// /// [^1]: these numbers can be smaller in practice due to linker deduplication #[doc(hidden)] #[macro_export] macro_rules! __impl_islamic_umm_al_qura_cache_v1_marker { ($ provider : ty) => { #[clippy::msrv = "1.71.1"] const _: () = <$provider>::MUST_USE_MAKE_PROVIDER_MACRO; #[clippy::msrv = "1.71.1"] impl $provider { #[doc(hidden)] pub const SINGLETON_ISLAMIC_UMM_AL_QURA_CACHE_V1_MARKER: &'static ::DataStruct = &icu::calendar::provider::islamic::IslamicCacheV1 { first_extended_year: 1317i32, data: unsafe { zerovec::ZeroVec::from_bytes_unchecked(b".5\xAD:\xAA\x05\xA5;I\x0B\x95\nK5\x9B:Z\x05U;R\x0F\xA4\x0EJ\x0E\x95\n-5\xAD6j\x0BT\x07I\x07\x956+=Z\t\xBA2\xB95\xB4\x0Bd\x0B\xAA\nV\n\xB64m9\xEC2\xE96\xB2\x0ET\r\xAA\x0C:\t\xB62u5j;T\x0B%\x0BK:\x1B5[:\xB62\xB56\xA9\x0E\x92\x0E%\rM:\xAD4[9Z;\xD2\x06\xA5\x0EJ\x0E\x96\x0C6\x05u:t\x05i;R\x07\xA9\x06U5\xAD:\xEC\x04\xEA:\xD4\x05\xC9=R\r\xA5\n\xD54u9\xF4\x04\xE9:\xD2\x06\xA5\x06+5W2\xB7Tv9j\x05e=J\r\x96\x0C.9]2\xDD4\xD6:\xAA\x06\x956'5W:\xAE4m9j\x03e;\xC9\x06\x936+5g9\xD62\xD55\xD2\r\xA4\x0BI\x0B\x95\n-5\xAD5j;\xE4\x06\xC9\r\x92\r\xA6\nV\t\xAE2m5j3U;\xAA\nM9\x9D4]9\xBA2\xB55\xAA\x05U=\x9A\n.9\x9E2]5\xDA:\xD4\x06\xA5\x06K=\x96\nN\x05\xAE:\xAC\x05\xA9;\x92\r%\x0BK6\xABJ\x0E\x95\n-5\xAD:l\x03Y7\xD2\x06\x95\x06-5[:\xBA4\xBA9\xB4\x03i;R\x0B\xA6\n\xB64m9\xEC\x02\xD96\xB2\x0ET\r*\rV\n\xB64m9j\rT\x0B)\x0B\x93:+5W:65\xB5:\xAA\x06\x93>&\rM\n\xAD4[9\xDA<\xD4\x06\xA9\x0ER\x0E\xAA\x0CV\t\xB5:t\x05q;d\x07\xC9\x06U5\xAD2m5\xEA:\xE4\x05\xD1\rR\r\xA5\nU9u2\xED4\xE9:\xD2\x06\xA5\x06K9W4\xB78\xB62u5j=J\r\x96\x0C.9^2\xDD4\xDA:\xD2\x06\xA55K5\x97:\xAE4m9j\x03e;R\x07\xA5\x06K5\xAB:Z5\xD56\xD2\r\xA4\x0BJ\x0B\x95\nM5\xAD9j\x03\xD55\xCA\x05\x95=*\x05") } }; } #[clippy::msrv = "1.71.1"] impl icu_provider::DataProvider for $provider { fn load(&self, req: icu_provider::DataRequest) -> Result, icu_provider::DataError> { if req.id.locale.is_default() { Ok(icu_provider::DataResponse { payload: icu_provider::DataPayload::from_static_ref(Self::SINGLETON_ISLAMIC_UMM_AL_QURA_CACHE_V1_MARKER), metadata: Default::default() }) } else { Err(icu_provider::DataErrorKind::InvalidRequest.with_req(::INFO, req)) } } } }; ($ provider : ty , ITER) => { __impl_islamic_umm_al_qura_cache_v1_marker!($provider); #[clippy::msrv = "1.71.1"] impl icu_provider::IterableDataProvider for $provider { fn iter_ids(&self) -> Result>, icu_provider::DataError> { Ok([Default::default()].into_iter().collect()) } } }; ($ provider : ty , DRY) => { __impl_islamic_umm_al_qura_cache_v1_marker!($provider); #[clippy::msrv = "1.71.1"] impl icu_provider::DryDataProvider for $provider { fn dry_load(&self, req: icu_provider::DataRequest) -> Result { if req.id.locale.is_default() { Ok(Default::default()) } else { Err(icu_provider::DataErrorKind::InvalidRequest.with_req(::INFO, req)) } } } }; ($ provider : ty , DRY , ITER) => { __impl_islamic_umm_al_qura_cache_v1_marker!($provider); #[clippy::msrv = "1.71.1"] impl icu_provider::DryDataProvider for $provider { fn dry_load(&self, req: icu_provider::DataRequest) -> Result { if req.id.locale.is_default() { Ok(Default::default()) } else { Err(icu_provider::DataErrorKind::InvalidRequest.with_req(::INFO, req)) } } } #[clippy::msrv = "1.71.1"] impl icu_provider::IterableDataProvider for $provider { fn iter_ids(&self) -> Result>, icu_provider::DataError> { Ok([Default::default()].into_iter().collect()) } } }; } #[doc(inline)] pub use __impl_islamic_umm_al_qura_cache_v1_marker as impl_islamic_umm_al_qura_cache_v1_marker;