Lines Matching refs:pluralRules

44 void JSPluralRules::SetIcuNumberFormatter(JSThread *thread, const JSHandle<JSPluralRules> &pluralRules,
53 JSTaggedValue data = pluralRules->GetIcuNF();
60 pluralRules->SetIcuNF(thread, pointer.GetTaggedValue());
82 void JSPluralRules::SetIcuPluralRules(JSThread *thread, const JSHandle<JSPluralRules> &pluralRules,
91 JSTaggedValue data = pluralRules->GetIcuPR();
98 pluralRules->SetIcuPR(thread, pointer.GetTaggedValue());
148 // InitializePluralRules ( pluralRules, locales, options )
150 const JSHandle<JSPluralRules> &pluralRules,
185 // set pluralRules.[[type]] to type
186 pluralRules->SetType(type);
244 THROW_RANGE_ERROR_AND_RETURN(thread, "cannot create icuPluralRules", pluralRules);
247 // 9. Perform ? SetNumberFormatDigitOptions(pluralRules, options, 0, 3, "standard").
248 JSLocale::SetNumberFormatDigitOptions(thread, pluralRules, JSHandle<JSTaggedValue>::Cast(prOptions), MNFD_DEFAULT,
251 icuNumberFormatter = JSNumberFormat::SetICUFormatterDigitOptions(icuNumberFormatter, pluralRules);
253 // Set pluralRules.[[IcuPluralRules]] to icuPluralRules
254 SetIcuPluralRules(thread, pluralRules, *icuPluralRules, JSPluralRules::FreeIcuPluralRules);
256 // Set pluralRules.[[IcuNumberFormat]] to icuNumberFormatter
257 SetIcuNumberFormatter(thread, pluralRules, icuNumberFormatter, JSPluralRules::FreeIcuNumberFormatter);
259 // 12. Set pluralRules.[[Locale]] to the value of r.[[locale]].
262 pluralRules->SetLocale(thread, localeStr.GetTaggedValue());
264 // 13. Return pluralRules.
265 return pluralRules;
289 JSHandle<EcmaString> JSPluralRules::ResolvePlural(JSThread *thread, const JSHandle<JSPluralRules> &pluralRules,
292 icu::PluralRules *icuPluralRules = pluralRules->GetIcuPluralRules();
293 icu::number::LocalizedNumberFormatter *icuFormatter = pluralRules->GetIcuNumberFormatter();
303 void JSPluralRules::ResolvedOptions(JSThread *thread, const JSHandle<JSPluralRules> &pluralRules,
312 JSHandle<EcmaString> locale(thread, pluralRules->GetLocale());
319 if (pluralRules->GetType() == TypeOption::CARDINAL) {
329 JSHandle<JSTaggedValue> minimumIntegerDigits(thread, pluralRules->GetMinimumIntegerDigits());
333 RoundingType roundingType = pluralRules->GetRoundingType();
337 JSHandle<JSTaggedValue> minimumSignificantDigits(thread, pluralRules->GetMinimumSignificantDigits());
342 JSHandle<JSTaggedValue> maximumSignificantDigits(thread, pluralRules->GetMaximumSignificantDigits());
348 JSHandle<JSTaggedValue> minimumFractionDigits(thread, pluralRules->GetMinimumFractionDigits());
353 JSHandle<JSTaggedValue> maximumFractionDigits(thread, pluralRules->GetMaximumFractionDigits());
363 icu::PluralRules *icuPluralRules = pluralRules->GetIcuPluralRules();