Struct SubdivisionId

struct SubdivisionId { ... }

A Subivision Id as defined in Unicode Locale Identifier.

Subdivision Id is used in Unicode extensions:

In both cases the subdivision is composed of a Region and a SubdivisionSuffix which represents different meaning depending on the key.

Examples

use icu::locale::{
    extensions::unicode::{subdivision_suffix, SubdivisionId},
    subtags::region,
};

let ss = subdivision_suffix!("zzzz");
let region = region!("gb");

let si = SubdivisionId::new(region, ss);

assert_eq!(si.to_string(), "gbzzzz");

Fields

region: Region

A region field of a Subdivision Id.

suffix: SubdivisionSuffix

A subdivision suffix field of a Subdivision Id.

Implementations

impl SubdivisionId

const fn new(region: Region, suffix: SubdivisionSuffix) -> Self

Returns a new SubdivisionId.

Examples

use icu::locale::{
    extensions::unicode::{subdivision_suffix, SubdivisionId},
    subtags::region,
};

let ss = subdivision_suffix!("zzzz");
let region = region!("gb");

let si = SubdivisionId::new(region, ss);

assert_eq!(si.to_string(), "gbzzzz");
fn try_from_str(s: &str) -> Result<Self, ParseError>

A constructor which takes a str slice, parses it and produces a well-formed SubdivisionId.

fn try_from_utf8(code_units: &[u8]) -> Result<Self, ParseError>

See Self::try_from_str

fn into_subtag(self: Self) -> Subtag

Convert to Subtag

impl SubdivisionId

fn to_string(self: &Self) -> String

Converts the given value to a String.

Under the hood, this uses an efficient Writeable implementation. However, in order to avoid allocating a string, it is more efficient to use Writeable directly.

impl Clone for SubdivisionId

fn clone(self: &Self) -> SubdivisionId

impl Copy for SubdivisionId

impl Debug for SubdivisionId

fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result

impl Display for SubdivisionId

fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result

impl Eq for SubdivisionId

impl Freeze for SubdivisionId

impl FromStr for SubdivisionId

fn from_str(s: &str) -> Result<Self, <Self as >::Err>

impl Hash for SubdivisionId

fn hash<__H: $crate::hash::Hasher>(self: &Self, state: &mut __H)

impl Ord for SubdivisionId

fn cmp(self: &Self, other: &SubdivisionId) -> Ordering

impl PartialEq for SubdivisionId

fn eq(self: &Self, other: &SubdivisionId) -> bool

impl PartialOrd for SubdivisionId

fn partial_cmp(self: &Self, other: &SubdivisionId) -> Option<Ordering>

impl RefUnwindSafe for SubdivisionId

impl Send for SubdivisionId

impl StructuralPartialEq for SubdivisionId

impl Sync for SubdivisionId

impl Unpin for SubdivisionId

impl UnsafeUnpin for SubdivisionId

impl UnwindSafe for SubdivisionId

impl Writeable for SubdivisionId

fn write_to<W: core::fmt::Write + ?Sized>(self: &Self, sink: &mut W) -> Result
fn writeable_length_hint(self: &Self) -> LengthHint

impl<T> Any for SubdivisionId

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for SubdivisionId

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for SubdivisionId

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for SubdivisionId

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> ErasedDestructor for SubdivisionId

impl<T> From for SubdivisionId

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for SubdivisionId

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T> ToString for SubdivisionId

fn to_string(self: &Self) -> String

impl<T, U> Into for SubdivisionId

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for SubdivisionId

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for SubdivisionId

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>