use super::PluralRuleStringsV1Marker;
use crate::{PluralRuleType, PluralRulesError};
use icu_locid::LanguageIdentifier;
use icu_provider::prelude::*;
#[allow(missing_docs)] pub fn resolve_plural_data<'data, D: DataProvider<'data, PluralRuleStringsV1Marker> + ?Sized>(
langid: LanguageIdentifier,
data_provider: &D,
type_: PluralRuleType,
) -> Result<DataPayload<'data, PluralRuleStringsV1Marker>, PluralRulesError> {
let key = match type_ {
PluralRuleType::Cardinal => super::key::CARDINAL_V1,
PluralRuleType::Ordinal => super::key::ORDINAL_V1,
};
Ok(data_provider
.load_payload(&DataRequest {
resource_path: ResourcePath {
key,
options: ResourceOptions {
variant: None,
langid: Some(langid),
},
},
})?
.take_payload()?)
}