BOOL JavascriptStringObject::SetProperty(PropertyId propertyId, Var value, PropertyOperationFlags flags, PropertyValueInfo* info) { bool result; if (SetPropertyBuiltIns(propertyId, flags, &result)) { return result; } return DynamicObject::SetProperty(propertyId, value, flags, info); }
BOOL BoundFunction::SetProperty(PropertyId propertyId, Var value, PropertyOperationFlags flags, PropertyValueInfo* info) { BOOL result; if (SetPropertyBuiltIns(propertyId, value, flags, info, &result)) { return result; } return JavascriptFunction::SetProperty(propertyId, value, flags, info); }
BOOL ES5Array::SetProperty(PropertyId propertyId, Var value, PropertyOperationFlags propertyOperationFlags, PropertyValueInfo* info) { BOOL result; if (SetPropertyBuiltIns(propertyId, value, propertyOperationFlags, &result)) { return result; } return __super::SetProperty(propertyId, value, propertyOperationFlags, info); }
BOOL JavascriptStringObject::SetProperty(JavascriptString* propertyNameString, Var value, PropertyOperationFlags flags, PropertyValueInfo* info) { bool result; PropertyRecord const* propertyRecord; this->GetScriptContext()->FindPropertyRecord(propertyNameString, &propertyRecord); if (propertyRecord != nullptr && SetPropertyBuiltIns(propertyRecord->GetPropertyId(), flags, &result)) { return result; } return DynamicObject::SetProperty(propertyNameString, value, flags, info); }
BOOL BoundFunction::SetProperty(JavascriptString* propertyNameString, Var value, PropertyOperationFlags flags, PropertyValueInfo* info) { BOOL result; PropertyRecord const* propertyRecord; this->GetScriptContext()->FindPropertyRecord(propertyNameString, &propertyRecord); if (propertyRecord != nullptr && SetPropertyBuiltIns(propertyRecord->GetPropertyId(), value, flags, info, &result)) { return result; } return JavascriptFunction::SetProperty(propertyNameString, value, flags, info); }
BOOL JavascriptGeneratorFunction::SetProperty(PropertyId propertyId, Var value, PropertyOperationFlags flags, PropertyValueInfo* info) { BOOL result; if (SetPropertyBuiltIns(propertyId, value, flags, info, &result)) { return result; } if (propertyId == PropertyIds::caller || propertyId == PropertyIds::arguments) { // JavascriptFunction has special case for caller and arguments; call DynamicObject:: virtual directly to skip that. return DynamicObject::SetProperty(propertyId, value, flags, info); } return JavascriptFunction::SetProperty(propertyId, value, flags, info); }
BOOL JavascriptGeneratorFunction::SetProperty(JavascriptString* propertyNameString, Var value, PropertyOperationFlags flags, PropertyValueInfo* info) { PropertyRecord const* propertyRecord; this->GetScriptContext()->FindPropertyRecord(propertyNameString, &propertyRecord); if (propertyRecord != nullptr) { BOOL result; if (SetPropertyBuiltIns(propertyRecord->GetPropertyId(), value, flags, info, &result)) { return result; } if (propertyRecord->GetPropertyId() == PropertyIds::caller || propertyRecord->GetPropertyId() == PropertyIds::arguments) { // JavascriptFunction has special case for caller and arguments; call DynamicObject:: virtual directly to skip that. return DynamicObject::SetProperty(propertyNameString, value, flags, info); } } return JavascriptFunction::SetProperty(propertyNameString, value, flags, info); }