• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // @generated
2 include!("locale_likely_subtags_language_v1.rs.data");
3 include!("locale_parents_v1.rs.data");
4 include!("locale_exemplar_characters_main_v1.rs.data");
5 include!("locale_exemplar_characters_numbers_v1.rs.data");
6 include!("locale_aliases_v1.rs.data");
7 include!("locale_exemplar_characters_index_v1.rs.data");
8 include!("locale_exemplar_characters_auxiliary_v1.rs.data");
9 include!("locale_likely_subtags_extended_v1.rs.data");
10 include!("locale_script_direction_v1.rs.data");
11 include!("locale_likely_subtags_script_region_v1.rs.data");
12 include!("locale_exemplar_characters_punctuation_v1.rs.data");
13 /// Marks a type as a data provider. You can then use macros like
14 /// `impl_core_helloworld_v1` to add implementations.
15 ///
16 /// ```ignore
17 /// struct MyProvider;
18 /// const _: () = {
19 ///     include!("path/to/generated/macros.rs");
20 ///     make_provider!(MyProvider);
21 ///     impl_core_helloworld_v1!(MyProvider);
22 /// }
23 /// ```
24 #[doc(hidden)]
25 #[macro_export]
26 macro_rules! __make_provider {
27     ($ name : ty) => {
28         #[clippy::msrv = "1.81"]
29         impl $name {
30             #[allow(dead_code)]
31             pub(crate) const MUST_USE_MAKE_PROVIDER_MACRO: () = ();
32         }
33         icu_provider::marker::impl_data_provider_never_marker!($name);
34     };
35 }
36 #[doc(inline)]
37 pub use __make_provider as make_provider;
38 #[allow(unused_macros)]
39 macro_rules! impl_data_provider {
40     ($ provider : ty) => {
41         make_provider!($provider);
42         impl_locale_likely_subtags_language_v1!($provider);
43         impl_locale_parents_v1!($provider);
44         impl_locale_exemplar_characters_main_v1!($provider);
45         impl_locale_exemplar_characters_numbers_v1!($provider);
46         impl_locale_aliases_v1!($provider);
47         impl_locale_exemplar_characters_index_v1!($provider);
48         impl_locale_exemplar_characters_auxiliary_v1!($provider);
49         impl_locale_likely_subtags_extended_v1!($provider);
50         impl_locale_script_direction_v1!($provider);
51         impl_locale_likely_subtags_script_region_v1!($provider);
52         impl_locale_exemplar_characters_punctuation_v1!($provider);
53     };
54 }
55