rustc_baked_icu_data/data/mod.rs
1// @generated
2include!("list_and_v1.rs.data");
3/// Marks a type as a data provider. You can then use macros like
4/// `impl_core_helloworld_v1` to add implementations.
5///
6/// ```ignore
7/// struct MyProvider;
8/// const _: () = {
9/// include!("path/to/generated/macros.rs");
10/// make_provider!(MyProvider);
11/// impl_core_helloworld_v1!(MyProvider);
12/// }
13/// ```
14#[doc(hidden)]
15#[macro_export]
16macro_rules! __make_provider {
17 ($ name : ty) => {
18 #[clippy::msrv = "1.82"]
19 impl $name {
20 #[allow(dead_code)]
21 pub(crate) const MUST_USE_MAKE_PROVIDER_MACRO: () = ();
22 }
23 icu_provider::marker::impl_data_provider_never_marker!($name);
24 };
25}
26#[doc(inline)]
27pub use __make_provider as make_provider;
28/// This macro requires the following crates:
29/// * `icu_list`
30/// * `icu_locale/compiled_data`
31/// * `icu_provider`
32/// * `icu_provider/baked`
33/// * `zerovec`
34#[allow(unused_macros)]
35macro_rules! impl_data_provider {
36 ($ provider : ty) => {
37 make_provider!($provider);
38 impl_list_and_v1!($provider);
39 };
40}