Struct icu_timezone::provider::names::IanaToBcp47MapV2
source ยท pub struct IanaToBcp47MapV2<'data> {
pub map: ZeroAsciiIgnoreCaseTrie<ZeroVec<'data, u8>>,
pub bcp47_ids: ZeroVec<'data, TimeZoneBcp47Id>,
pub bcp47_ids_checksum: u64,
}
Expand description
A mapping from normal-case IANA time zone identifiers to BCP-47 time zone identifiers.
Multiple IANA time zone IDs can map to the same BCP-47 time zone ID.
๐ง This code is considered unstable; it may change at any time, in breaking or non-breaking ways,
including in SemVer minor releases. While the serde representation of data structs is guaranteed
to be stable, their Rust representation might not be. Use with caution.
Fieldsยง
ยงmap: ZeroAsciiIgnoreCaseTrie<ZeroVec<'data, u8>>
A map from normal-case IANA time zone identifiers to indexes of BCP-47 time zone identifiers along with a canonical flag. The IANA identifiers are normal-case.
The usize
values stored in the trie have the following form:
- Lowest bit: 1 if canonical, 0 if not canonical
- All remaining bits: index into
bcp47_ids
For example, in CLDR 44, "Africa/Abidjan"
has value 221, which means it is canonical
(low bit is 1 == odd number) and the index into bcp47_ids
is 110 (221 >> 1).
bcp47_ids: ZeroVec<'data, TimeZoneBcp47Id>
A sorted list of BCP-47 time zone identifiers.
bcp47_ids_checksum: u64
An XxHash64 checksum of Self::bcp47_ids
.
Trait Implementationsยง
sourceยงimpl<'data> Clone for IanaToBcp47MapV2<'data>
impl<'data> Clone for IanaToBcp47MapV2<'data>
sourceยงfn clone(&self) -> IanaToBcp47MapV2<'data>
fn clone(&self) -> IanaToBcp47MapV2<'data>
Returns a copy of the value. Read more
1.0.0 ยท sourceยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceยงimpl<'data> Debug for IanaToBcp47MapV2<'data>
impl<'data> Debug for IanaToBcp47MapV2<'data>
sourceยงimpl<'data> PartialEq for IanaToBcp47MapV2<'data>
impl<'data> PartialEq for IanaToBcp47MapV2<'data>
sourceยงimpl<'a> Yokeable<'a> for IanaToBcp47MapV2<'static>
impl<'a> Yokeable<'a> for IanaToBcp47MapV2<'static>
sourceยงtype Output = IanaToBcp47MapV2<'a>
type Output = IanaToBcp47MapV2<'a>
This type MUST be
Self
with the 'static
replaced with 'a
, i.e. Self<'a>
sourceยงfn transform_owned(self) -> Self::Output
fn transform_owned(self) -> Self::Output
sourceยงimpl<'zf, 'zf_inner> ZeroFrom<'zf, IanaToBcp47MapV2<'zf_inner>> for IanaToBcp47MapV2<'zf>
impl<'zf, 'zf_inner> ZeroFrom<'zf, IanaToBcp47MapV2<'zf_inner>> for IanaToBcp47MapV2<'zf>
sourceยงfn zero_from(this: &'zf IanaToBcp47MapV2<'zf_inner>) -> Self
fn zero_from(this: &'zf IanaToBcp47MapV2<'zf_inner>) -> Self
Clone the other
C
into a struct that may retain references into C
.impl<'data> StructuralPartialEq for IanaToBcp47MapV2<'data>
Auto Trait Implementationsยง
impl<'data> Freeze for IanaToBcp47MapV2<'data>
impl<'data> RefUnwindSafe for IanaToBcp47MapV2<'data>
impl<'data> Send for IanaToBcp47MapV2<'data>
impl<'data> Sync for IanaToBcp47MapV2<'data>
impl<'data> Unpin for IanaToBcp47MapV2<'data>
impl<'data> UnwindSafe for IanaToBcp47MapV2<'data>
Blanket Implementationsยง
sourceยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
sourceยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceยงimpl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
sourceยงunsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
๐ฌThis is a nightly-only experimental API. (
clone_to_uninit
)