1// @generated 2/// Implement `DataProvider<LineBreakNameToValueV2>` on the given struct using the data 3/// hardcoded in this file. This allows the struct to be used with 4/// `icu`'s `_unstable` constructors. 5/// 6/// Using this implementation will embed the following data in the binary's data segment: 7/// * 780B[^1] for the singleton data struct 8/// 9/// [^1]: these numbers can be smaller in practice due to linker deduplication 10#[doc(hidden)] 11#[macro_export] 12macro_rules! __impl_line_break_name_to_value_v2 { 13 ($ provider : ty) => { 14 #[clippy::msrv = "1.81"] 15 const _: () = <$provider>::MUST_USE_MAKE_PROVIDER_MACRO; 16 #[clippy::msrv = "1.81"] 17 impl $provider { 18 #[doc(hidden)] 19 pub const SINGLETON_LINE_BREAK_NAME_TO_VALUE_V2: &'static <icu::properties::provider::LineBreakNameToValueV2 as icu_provider::DynamicDataMarker>::DataStruct = &icu::properties::provider::names::PropertyValueNameToEnumMap { map: zerotrie::ZeroTrieSimpleAscii { store: unsafe { zerovec::ZeroVec::from_bytes_unchecked(b"\xE1uABCEGHIJLMNOPQRSUVWXZ\0\0\x01\x01\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02Bs\x04/7\\\x96\xA2\xB1\xC0\xEC\x02+:Rt{\x93\xA4\xA6\xC8IKLPSklm\x01\x03\x04\x06\x08!*\x81\x90\x1B\x82\x90\x1C\x90\x1Dsara\x90\x1B_\xC2PS\x08rebase\x90\x1Ctart\x90\x1Dphabetic\x82biguous\x81\xC52ABKr\x01\x02\x03\x04\x83\x84\x85\x86eak_\xC3ABS\x05\x11fter\x84\xC2eo\x05fore\x85th\x83ymbols\x90\x0B\xC9BJLMPRalo\x01\x03\x04\x05\x07\x08\x164\x87\x90\x15\x88\x89\x90\x14\x8Arriage_Return\x8Aose_P\xC2au\x0Brenthesis\x90\x14nctuation\x88\xC2mn\x1C\xC2bp\x0Bining_Mark\x89lex_Context\x90\x08\xC2dt\x1Aitional_Japanese_Starter\x90\x15ingent_Break\x87\xC5BMX_x\x02\x04\x05\x17\x90\x18\x90\x19\x8B\xC2BM\x05ase\x90\x18odifier\x90\x19clamation\x8B\xC2Ll\x01\x8Cue\x8C\xC623LYey\x02\x04\x06\x07\x14\x90\x0F\x90\x10\x90\x16\x8Dbrew_Letter\x90\x16phen\x8D\xC5DNSdn\x01\x02\x04\x0E\x8E\x8F\x90\0eographic\x8E\xC2fs\x0Cix_Numeric\x90\0ep\xC2ae\x06rable\x8Frable\x8F\xC3LTV\x02\x04\x90\x11\x90\x12\x90\x13\xC2Fi\x02\x90\x01ne_Feed\x90\x01andatory_Break\x86\xC6LSUeou\x02\x04\x06\x0F\x19\x90\r\x90\x02\x90\x03xt_Line\x90\rnstarter\x90\x02meric\x90\x03\xC2Pp\x02\x90\x04en_Punctuation\x90\x04\xC4ORor\x02\x04\x13\x90\x05\x90\x06stfix_Numeric\x90\x05efix_Numeric\x90\x06\xC2Uu\x02\x90\x07otation\x90\x07\xC2Ie\x02\x90\x17gional_Indicator\x90\x17\xC6AGPYpu\x02\x04\x06\x08\r\x90\x08\x90\t\x90\n\x90\x0Bace\x90\nrrogate\x90\tnknown\x80\xC3FIi\x02\x04\x90\x1E\x90\x1Frama\x90\x1F_Final\x90\x1E\xC2Jo\x02\x90\x0Erd_Joiner\x90\x0EX\x80W\x90\x0C\xC2JS\x02\x90\x1Apace\x90\x0C") } } }; 20 } 21 #[clippy::msrv = "1.81"] 22 impl icu_provider::DataProvider<icu::properties::provider::LineBreakNameToValueV2> for $provider { 23 fn load(&self, req: icu_provider::DataRequest) -> Result<icu_provider::DataResponse<icu::properties::provider::LineBreakNameToValueV2>, icu_provider::DataError> { 24 if req.id.locale.is_default() { 25 Ok(icu_provider::DataResponse { payload: icu_provider::DataPayload::from_static_ref(Self::SINGLETON_LINE_BREAK_NAME_TO_VALUE_V2), metadata: icu_provider::DataResponseMetadata::default() }) 26 } else { 27 Err(icu_provider::DataErrorKind::InvalidRequest.with_req(<icu::properties::provider::LineBreakNameToValueV2 as icu_provider::DataMarker>::INFO, req)) 28 } 29 } 30 } 31 }; 32 ($ provider : ty , ITER) => { 33 __impl_line_break_name_to_value_v2!($provider); 34 #[clippy::msrv = "1.81"] 35 impl icu_provider::IterableDataProvider<icu::properties::provider::LineBreakNameToValueV2> for $provider { 36 fn iter_ids(&self) -> Result<std::collections::BtreeSet<icu_provider::DataIdentifierCow<'static>>, icu_provider::DataError> { 37 Ok([Default::default()].into_iter().collect()) 38 } 39 } 40 }; 41 ($ provider : ty , DRY) => { 42 __impl_line_break_name_to_value_v2!($provider); 43 #[clippy::msrv = "1.81"] 44 impl icu_provider::DryDataProvider<icu::properties::provider::LineBreakNameToValueV2> for $provider { 45 fn dry_load(&self, req: icu_provider::DataRequest) -> Result<icu_provider::DataResponseMetadata, icu_provider::DataError> { 46 if req.id.locale.is_default() { 47 Ok(icu_provider::DataResponseMetadata::default()) 48 } else { 49 Err(icu_provider::DataErrorKind::InvalidRequest.with_req(<icu::properties::provider::LineBreakNameToValueV2 as icu_provider::DataMarker>::INFO, req)) 50 } 51 } 52 } 53 }; 54 ($ provider : ty , DRY , ITER) => { 55 __impl_line_break_name_to_value_v2!($provider); 56 #[clippy::msrv = "1.81"] 57 impl icu_provider::DryDataProvider<icu::properties::provider::LineBreakNameToValueV2> for $provider { 58 fn dry_load(&self, req: icu_provider::DataRequest) -> Result<icu_provider::DataResponseMetadata, icu_provider::DataError> { 59 if req.id.locale.is_default() { 60 Ok(icu_provider::DataResponseMetadata::default()) 61 } else { 62 Err(icu_provider::DataErrorKind::InvalidRequest.with_req(<icu::properties::provider::LineBreakNameToValueV2 as icu_provider::DataMarker>::INFO, req)) 63 } 64 } 65 } 66 #[clippy::msrv = "1.81"] 67 impl icu_provider::IterableDataProvider<icu::properties::provider::LineBreakNameToValueV2> for $provider { 68 fn iter_ids(&self) -> Result<std::collections::BtreeSet<icu_provider::DataIdentifierCow<'static>>, icu_provider::DataError> { 69 Ok([Default::default()].into_iter().collect()) 70 } 71 } 72 }; 73} 74#[doc(inline)] 75pub use __impl_line_break_name_to_value_v2 as impl_line_break_name_to_value_v2; 76