• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// @generated
2/// Implement `DataProvider<HelloWorldV1>` 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/// * 176B for the lookup data structure (27 data identifiers)
8/// * 1100B[^1] for the actual data (27 unique structs)
9///
10/// [^1]: these numbers can be smaller in practice due to linker deduplication
11#[doc(hidden)]
12#[macro_export]
13macro_rules! __impl_hello_world_v1 {
14    ($ provider : ty) => {
15        #[clippy::msrv = "1.81"]
16        const _: () = <$provider>::MUST_USE_MAKE_PROVIDER_MACRO;
17        #[clippy::msrv = "1.81"]
18        impl $provider {
19            const DATA_HELLO_WORLD_V1: icu_provider_baked::zerotrie::DataForVarULEs<icu_provider::hello_world::HelloWorldV1> = {
20                const TRIE: icu_provider_baked::zerotrie::ZeroTrieSimpleAscii<&'static [u8]> = icu_provider_baked::zerotrie::ZeroTrieSimpleAscii { store: b"\xCDbcdefijlprsvz\x02\x04\nCIKX[^fpsn\x80s\x81e\x82-AT\x83\xC3lno\x012\x84\x85\xC2\x1E-\treverse\x90\t\xC301G\x0C\x0F\xC201\x06\xC212\x01\x86\x879\x8842\x89B\x8A-u-sd-gbeng\x8B\x8C\xC2ai\x01\x8D\x8Es\x8Fa\x90\0\x1Ereverse\x90\na\x90\x01t\x90\x02\xC2ou\x02\x90\x03\x90\x04r\x90\x05-Latn\x90\x06i\x90\x07h\x90\x08" };
21                const VALUES: &'static zerovec::VarZeroSlice<<<icu_provider::hello_world::HelloWorldV1 as icu_provider_baked::zerotrie::DynamicDataMarker>::DataStruct as icu_provider::ule::MaybeAsVarULE>::EncodedStruct> = unsafe { zerovec::vecs::VarZeroSlice16::from_bytes_unchecked(b"\x1B\0\x19\0$\0.\09\0T\0_\0q\0\x80\0\x8F\0\x9E\0\xB1\0\xD8\0\xE6\0\xFA\0\x05\x01\x13\x01(\x012\x01=\x01H\x01\\\x01u\x01\x82\x01\x98\x01\xA4\x01\xAF\x01\xE0\xA6\x93\xE0\xA6\xB9\xE0\xA7\x87 \xE0\xA6\xAC\xE0\xA6\xBF\xE0\xA6\xB6\xE0\xA7\x8D\xE0\xA6\xACAhoj sv\xC4\x9BteHallo WeltServus Welt\xCE\x9A\xCE\xB1\xCE\xBB\xCE\xB7\xCE\xBC\xCE\xAD\xCF\x81\xCE\xB1 \xCE\xBA\xCF\x8C\xCF\x83\xCE\xBC\xCE\xB5Hello WorldHello from \xF0\x9F\x97\xBA\xEF\xB8\x8FHello from \xF0\x9F\x8C\x8DHello from \xF0\x9F\x8C\x8EHello from \xF0\x9F\x8C\x8FHello from \xF0\x9F\x87\xAC\xF0\x9F\x87\xA7Hello from \xF0\x9F\x8F\xB4\xF3\xA0\x81\xA7\xF3\xA0\x81\xA2\xF3\xA0\x81\xA5\xF3\xA0\x81\xAE\xF3\xA0\x81\xA7\xF3\xA0\x81\xBFSaluton, Mondo\xD8\xB3\xD9\x84\xD8\xA7\xD9\x85 \xD8\xAF\xD9\x86\xDB\x8C\xD8\xA7\xE2\x80\x8Ehei maailmaHall\xC3\xB3, heimur\xE3\x81\x93\xE3\x82\x93\xE3\x81\xAB\xE3\x81\xA1\xE3\x81\xAF\xE4\xB8\x96\xE7\x95\x8CAve, mundeOl\xC3\xA1, mundoSalut, lume\xD0\x9F\xD1\x80\xD0\xB8\xD0\xB2\xD0\xB5\xD1\x82, \xD0\xBC\xD0\xB8\xD1\x80\xD0\x9F\xD0\xBE\xD0\xB7\xD0\xB4\xD1\x80\xD0\xB0\xD0\xB2 \xD1\x81\xD0\xB2\xD0\xB5\xD1\x82\xD0\xB5Pozdrav sveteXin ch\xC3\xA0o th\xE1\xBA\xBF gi\xE1\xBB\x9Bi\xE4\xBD\xA0\xE5\xA5\xBD\xE4\xB8\x96\xE7\x95\x8COlleh Dlrow\xE7\x95\x8C\xE4\xB8\x96\xE3\x81\xAF\xE3\x81\xA1\xE3\x81\xAB\xE3\x82\x93\xE3\x81\x93") };
22                unsafe { icu_provider_baked::zerotrie::DataForVarULEs::from_trie_and_values_unchecked(TRIE, VALUES) }
23            };
24        }
25        #[clippy::msrv = "1.81"]
26        impl icu_provider::DataProvider<icu_provider::hello_world::HelloWorldV1> for $provider {
27            fn load(&self, req: icu_provider::DataRequest) -> Result<icu_provider::DataResponse<icu_provider::hello_world::HelloWorldV1>, icu_provider::DataError> {
28                let metadata = icu_provider::DataResponseMetadata::default().with_checksum(1234u64);
29                let Some(payload) = icu_provider_baked::DataStore::get(&Self::DATA_HELLO_WORLD_V1, req.id, req.metadata.attributes_prefix_match) else { return Err(icu_provider::DataErrorKind::IdentifierNotFound.with_req(<icu_provider::hello_world::HelloWorldV1 as icu_provider::DataMarker>::INFO, req)) };
30                Ok(icu_provider::DataResponse { payload, metadata })
31            }
32        }
33    };
34    ($ provider : ty , ITER) => {
35        __impl_hello_world_v1!($provider);
36        #[clippy::msrv = "1.81"]
37        impl icu_provider::IterableDataProvider<icu_provider::hello_world::HelloWorldV1> for $provider {
38            fn iter_ids(&self) -> Result<std::collections::BTreeSet<icu_provider::DataIdentifierCow<'static>>, icu_provider::DataError> {
39                Ok(icu_provider_baked::DataStore::iter(&Self::DATA_HELLO_WORLD_V1).collect())
40            }
41        }
42    };
43    ($ provider : ty , DRY) => {
44        __impl_hello_world_v1!($provider);
45        #[clippy::msrv = "1.81"]
46        impl icu_provider::DryDataProvider<icu_provider::hello_world::HelloWorldV1> for $provider {
47            fn dry_load(&self, req: icu_provider::DataRequest) -> Result<icu_provider::DataResponseMetadata, icu_provider::DataError> {
48                icu_provider::DataProvider::<icu_provider::hello_world::HelloWorldV1>::load(self, req).map(|r| r.metadata)
49            }
50        }
51    };
52    ($ provider : ty , DRY , ITER) => {
53        __impl_hello_world_v1!($provider);
54        #[clippy::msrv = "1.81"]
55        impl icu_provider::DryDataProvider<icu_provider::hello_world::HelloWorldV1> for $provider {
56            fn dry_load(&self, req: icu_provider::DataRequest) -> Result<icu_provider::DataResponseMetadata, icu_provider::DataError> {
57                icu_provider::DataProvider::<icu_provider::hello_world::HelloWorldV1>::load(self, req).map(|r| r.metadata)
58            }
59        }
60        #[clippy::msrv = "1.81"]
61        impl icu_provider::IterableDataProvider<icu_provider::hello_world::HelloWorldV1> for $provider {
62            fn iter_ids(&self) -> Result<std::collections::BTreeSet<icu_provider::DataIdentifierCow<'static>>, icu_provider::DataError> {
63                Ok(icu_provider_baked::DataStore::iter(&Self::DATA_HELLO_WORLD_V1).collect())
64            }
65        }
66    };
67}
68#[doc(inline)]
69pub use __impl_hello_world_v1 as impl_hello_world_v1;
70