DescriptorFlags ES5Array::GetSetter(PropertyId propertyId, Var *setterValue, PropertyValueInfo* info, ScriptContext* requestContext) { DescriptorFlags result; if (GetSetterBuiltIns(propertyId, info, &result)) { return result; } return DynamicObject::GetSetter(propertyId, setterValue, info, requestContext); }
DescriptorFlags ES5Array::GetSetter(JavascriptString* propertyNameString, Var *setterValue, PropertyValueInfo* info, ScriptContext* requestContext) { DescriptorFlags result; PropertyRecord const* propertyRecord; this->GetScriptContext()->FindPropertyRecord(propertyNameString, &propertyRecord); if (propertyRecord != nullptr && GetSetterBuiltIns(propertyRecord->GetPropertyId(), info, &result)) { return result; } return DynamicObject::GetSetter(propertyNameString, setterValue, info, requestContext); }
DescriptorFlags JavascriptStringObject::GetSetter(PropertyId propertyId, Var* setterValue, PropertyValueInfo* info, ScriptContext* requestContext) { DescriptorFlags flags; if (GetSetterBuiltIns(propertyId, info, &flags)) { return flags; } uint32 index; if (requestContext->IsNumericPropertyId(propertyId, &index)) { return JavascriptStringObject::GetItemSetter(index, setterValue, requestContext); } return DynamicObject::GetSetter(propertyId, setterValue, info, requestContext); }
DescriptorFlags JavascriptStringObject::GetSetter(JavascriptString* propertyNameString, Var* setterValue, PropertyValueInfo* info, ScriptContext* requestContext) { DescriptorFlags flags; PropertyRecord const* propertyRecord; this->GetScriptContext()->FindPropertyRecord(propertyNameString, &propertyRecord); if (propertyRecord != nullptr) { PropertyId propertyId = propertyRecord->GetPropertyId(); if (GetSetterBuiltIns(propertyId, info, &flags)) { return flags; } uint32 index; if (requestContext->IsNumericPropertyId(propertyId, &index)) { return JavascriptStringObject::GetItemSetter(index, setterValue, requestContext); } } return DynamicObject::GetSetter(propertyNameString, setterValue, info, requestContext); }