Vector<const uint16_t>(
reinterpret_cast<const uint16_t*>(pattern.getBuffer()),
pattern.length())).ToHandleChecked(),
- NONE,
SLOPPY).Assert();
// Set time zone and calendar.
resolved,
factory->NewStringFromStaticAscii("calendar"),
factory->NewStringFromAsciiChecked(calendar_name),
- NONE,
SLOPPY).Assert();
const icu::TimeZone& tz = calendar->getTimeZone();
resolved,
factory->NewStringFromStaticAscii("timeZone"),
factory->NewStringFromStaticAscii("UTC"),
- NONE,
SLOPPY).Assert();
} else {
JSObject::SetProperty(
reinterpret_cast<const uint16_t*>(
canonical_time_zone.getBuffer()),
canonical_time_zone.length())).ToHandleChecked(),
- NONE,
SLOPPY).Assert();
}
}
resolved,
factory->NewStringFromStaticAscii("numberingSystem"),
factory->NewStringFromAsciiChecked(ns),
- NONE,
SLOPPY).Assert();
} else {
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("numberingSystem"),
factory->undefined_value(),
- NONE,
SLOPPY).Assert();
}
delete numbering_system;
resolved,
factory->NewStringFromStaticAscii("locale"),
factory->NewStringFromAsciiChecked(result),
- NONE,
SLOPPY).Assert();
} else {
// This would never happen, since we got the locale from ICU.
resolved,
factory->NewStringFromStaticAscii("locale"),
factory->NewStringFromStaticAscii("und"),
- NONE,
SLOPPY).Assert();
}
}
Vector<const uint16_t>(
reinterpret_cast<const uint16_t*>(pattern.getBuffer()),
pattern.length())).ToHandleChecked(),
- NONE,
SLOPPY).Assert();
// Set resolved currency code in options.currency if not empty.
Vector<const uint16_t>(
reinterpret_cast<const uint16_t*>(currency.getBuffer()),
currency.length())).ToHandleChecked(),
- NONE,
SLOPPY).Assert();
}
resolved,
factory->NewStringFromStaticAscii("numberingSystem"),
factory->NewStringFromAsciiChecked(ns),
- NONE,
SLOPPY).Assert();
} else {
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("numberingSystem"),
factory->undefined_value(),
- NONE,
SLOPPY).Assert();
}
delete numbering_system;
resolved,
factory->NewStringFromStaticAscii("useGrouping"),
factory->ToBoolean(number_format->isGroupingUsed()),
- NONE,
SLOPPY).Assert();
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("minimumIntegerDigits"),
factory->NewNumberFromInt(number_format->getMinimumIntegerDigits()),
- NONE,
SLOPPY).Assert();
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("minimumFractionDigits"),
factory->NewNumberFromInt(number_format->getMinimumFractionDigits()),
- NONE,
SLOPPY).Assert();
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("maximumFractionDigits"),
factory->NewNumberFromInt(number_format->getMaximumFractionDigits()),
- NONE,
SLOPPY).Assert();
Handle<String> key =
factory->NewStringFromStaticAscii("minimumSignificantDigits");
- if (JSReceiver::HasOwnProperty(resolved, key)) {
+ Maybe<bool> maybe = JSReceiver::HasOwnProperty(resolved, key);
+ CHECK(maybe.has_value);
+ if (maybe.value) {
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("minimumSignificantDigits"),
factory->NewNumberFromInt(number_format->getMinimumSignificantDigits()),
- NONE,
SLOPPY).Assert();
}
key = factory->NewStringFromStaticAscii("maximumSignificantDigits");
- if (JSReceiver::HasOwnProperty(resolved, key)) {
+ maybe = JSReceiver::HasOwnProperty(resolved, key);
+ CHECK(maybe.has_value);
+ if (maybe.value) {
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("maximumSignificantDigits"),
factory->NewNumberFromInt(number_format->getMaximumSignificantDigits()),
- NONE,
SLOPPY).Assert();
}
resolved,
factory->NewStringFromStaticAscii("locale"),
factory->NewStringFromAsciiChecked(result),
- NONE,
SLOPPY).Assert();
} else {
// This would never happen, since we got the locale from ICU.
resolved,
factory->NewStringFromStaticAscii("locale"),
factory->NewStringFromStaticAscii("und"),
- NONE,
SLOPPY).Assert();
}
}
factory->NewStringFromStaticAscii("numeric"),
factory->ToBoolean(
collator->getAttribute(UCOL_NUMERIC_COLLATION, status) == UCOL_ON),
- NONE,
SLOPPY).Assert();
switch (collator->getAttribute(UCOL_CASE_FIRST, status)) {
resolved,
factory->NewStringFromStaticAscii("caseFirst"),
factory->NewStringFromStaticAscii("lower"),
- NONE,
SLOPPY).Assert();
break;
case UCOL_UPPER_FIRST:
resolved,
factory->NewStringFromStaticAscii("caseFirst"),
factory->NewStringFromStaticAscii("upper"),
- NONE,
SLOPPY).Assert();
break;
default:
resolved,
factory->NewStringFromStaticAscii("caseFirst"),
factory->NewStringFromStaticAscii("false"),
- NONE,
SLOPPY).Assert();
}
resolved,
factory->NewStringFromStaticAscii("strength"),
factory->NewStringFromStaticAscii("primary"),
- NONE,
SLOPPY).Assert();
// case level: true + s1 -> case, s1 -> base.
resolved,
factory->NewStringFromStaticAscii("sensitivity"),
factory->NewStringFromStaticAscii("case"),
- NONE,
SLOPPY).Assert();
} else {
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("sensitivity"),
factory->NewStringFromStaticAscii("base"),
- NONE,
SLOPPY).Assert();
}
break;
resolved,
factory->NewStringFromStaticAscii("strength"),
factory->NewStringFromStaticAscii("secondary"),
- NONE,
SLOPPY).Assert();
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("sensitivity"),
factory->NewStringFromStaticAscii("accent"),
- NONE,
SLOPPY).Assert();
break;
case UCOL_TERTIARY:
resolved,
factory->NewStringFromStaticAscii("strength"),
factory->NewStringFromStaticAscii("tertiary"),
- NONE,
SLOPPY).Assert();
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("sensitivity"),
factory->NewStringFromStaticAscii("variant"),
- NONE,
SLOPPY).Assert();
break;
case UCOL_QUATERNARY:
resolved,
factory->NewStringFromStaticAscii("strength"),
factory->NewStringFromStaticAscii("quaternary"),
- NONE,
SLOPPY).Assert();
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("sensitivity"),
factory->NewStringFromStaticAscii("variant"),
- NONE,
SLOPPY).Assert();
break;
default:
resolved,
factory->NewStringFromStaticAscii("strength"),
factory->NewStringFromStaticAscii("identical"),
- NONE,
SLOPPY).Assert();
JSObject::SetProperty(
resolved,
factory->NewStringFromStaticAscii("sensitivity"),
factory->NewStringFromStaticAscii("variant"),
- NONE,
SLOPPY).Assert();
}
factory->NewStringFromStaticAscii("ignorePunctuation"),
factory->ToBoolean(collator->getAttribute(
UCOL_ALTERNATE_HANDLING, status) == UCOL_SHIFTED),
- NONE,
SLOPPY).Assert();
// Set the locale
resolved,
factory->NewStringFromStaticAscii("locale"),
factory->NewStringFromAsciiChecked(result),
- NONE,
SLOPPY).Assert();
} else {
// This would never happen, since we got the locale from ICU.
resolved,
factory->NewStringFromStaticAscii("locale"),
factory->NewStringFromStaticAscii("und"),
- NONE,
SLOPPY).Assert();
}
}
resolved,
factory->NewStringFromStaticAscii("locale"),
factory->NewStringFromAsciiChecked(result),
- NONE,
SLOPPY).Assert();
} else {
// This would never happen, since we got the locale from ICU.
resolved,
factory->NewStringFromStaticAscii("locale"),
factory->NewStringFromStaticAscii("und"),
- NONE,
SLOPPY).Assert();
}
}
Handle<JSObject> obj) {
Handle<String> key =
isolate->factory()->NewStringFromStaticAscii("dateFormat");
- if (JSReceiver::HasOwnProperty(obj, key)) {
+ Maybe<bool> maybe = JSReceiver::HasOwnProperty(obj, key);
+ CHECK(maybe.has_value);
+ if (maybe.value) {
return reinterpret_cast<icu::SimpleDateFormat*>(
obj->GetInternalField(0));
}
Handle<JSObject> obj) {
Handle<String> key =
isolate->factory()->NewStringFromStaticAscii("numberFormat");
- if (JSReceiver::HasOwnProperty(obj, key)) {
+ Maybe<bool> maybe = JSReceiver::HasOwnProperty(obj, key);
+ CHECK(maybe.has_value);
+ if (maybe.value) {
return reinterpret_cast<icu::DecimalFormat*>(obj->GetInternalField(0));
}
icu::Collator* Collator::UnpackCollator(Isolate* isolate,
Handle<JSObject> obj) {
Handle<String> key = isolate->factory()->NewStringFromStaticAscii("collator");
- if (JSReceiver::HasOwnProperty(obj, key)) {
+ Maybe<bool> maybe = JSReceiver::HasOwnProperty(obj, key);
+ CHECK(maybe.has_value);
+ if (maybe.value) {
return reinterpret_cast<icu::Collator*>(obj->GetInternalField(0));
}
Handle<JSObject> obj) {
Handle<String> key =
isolate->factory()->NewStringFromStaticAscii("breakIterator");
- if (JSReceiver::HasOwnProperty(obj, key)) {
+ Maybe<bool> maybe = JSReceiver::HasOwnProperty(obj, key);
+ CHECK(maybe.has_value);
+ if (maybe.value) {
return reinterpret_cast<icu::BreakIterator*>(obj->GetInternalField(0));
}