use icu_provider::prelude::*;
use zerotrie::ZeroTrieSimpleAscii;
use zerovec::ZeroVec;
use super::TimeZone;
icu_provider::data_marker!(
TimezoneIdentifiersWindowsV1,
"timezone/identifiers/windows/v1",
WindowsZonesToBcp47Map<'static>,
is_singleton = true,
);
#[derive(PartialEq, Debug, Clone, zerofrom::ZeroFrom, yoke::Yokeable)]
#[cfg_attr(feature = "datagen", derive(serde::Serialize, databake::Bake))]
#[cfg_attr(feature = "datagen", databake(path = icu_time::provider::windows))]
#[cfg_attr(feature = "serde", derive(serde::Deserialize))]
pub struct WindowsZonesToBcp47Map<'data> {
#[cfg_attr(feature = "serde", serde(borrow))]
pub map: ZeroTrieSimpleAscii<ZeroVec<'data, u8>>,
#[cfg_attr(feature = "serde", serde(borrow))]
pub bcp47_ids: ZeroVec<'data, TimeZone>,
}
icu_provider::data_struct!(
WindowsZonesToBcp47Map<'_>,
#[cfg(feature = "datagen")]
);