Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(103)

Side by Side Diff: src/objects.cc

Issue 1099573002: Migrate error messages, part 4 (v8natives.js). (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: fix wrong assertion Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/object-observe.js ('k') | src/proxy.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <iomanip> 5 #include <iomanip>
6 #include <sstream> 6 #include <sstream>
7 7
8 #include "src/v8.h" 8 #include "src/v8.h"
9 9
10 #include "src/accessors.h" 10 #include "src/accessors.h"
(...skipping 3296 matching lines...) Expand 10 before | Expand all | Expand 10 after
3307 return WriteToReadOnlyProperty(isolate, receiver, 3307 return WriteToReadOnlyProperty(isolate, receiver,
3308 isolate->factory()->NewNumberFromUint(index), 3308 isolate->factory()->NewNumberFromUint(index),
3309 value, language_mode); 3309 value, language_mode);
3310 } 3310 }
3311 3311
3312 3312
3313 MaybeHandle<Object> Object::RedefineNonconfigurableProperty( 3313 MaybeHandle<Object> Object::RedefineNonconfigurableProperty(
3314 Isolate* isolate, Handle<Object> name, Handle<Object> value, 3314 Isolate* isolate, Handle<Object> name, Handle<Object> value,
3315 LanguageMode language_mode) { 3315 LanguageMode language_mode) {
3316 if (is_sloppy(language_mode)) return value; 3316 if (is_sloppy(language_mode)) return value;
3317 Handle<Object> args[] = {name}; 3317 THROW_NEW_ERROR(isolate,
3318 THROW_NEW_ERROR(isolate, NewTypeError("redefine_disallowed", 3318 NewTypeError(MessageTemplate::kRedefineDisallowed, name),
3319 HandleVector(args, arraysize(args))),
3320 Object); 3319 Object);
3321 } 3320 }
3322 3321
3323 3322
3324 MaybeHandle<Object> Object::SetDataProperty(LookupIterator* it, 3323 MaybeHandle<Object> Object::SetDataProperty(LookupIterator* it,
3325 Handle<Object> value) { 3324 Handle<Object> value) {
3326 // Proxies are handled on the WithHandler path. Other non-JSObjects cannot 3325 // Proxies are handled on the WithHandler path. Other non-JSObjects cannot
3327 // have own properties. 3326 // have own properties.
3328 Handle<JSObject> receiver = Handle<JSObject>::cast(it->GetReceiver()); 3327 Handle<JSObject> receiver = Handle<JSObject>::cast(it->GetReceiver());
3329 3328
(...skipping 566 matching lines...) Expand 10 before | Expand all | Expand 10 after
3896 // [[GetProperty]] requires to check that all properties are configurable. 3895 // [[GetProperty]] requires to check that all properties are configurable.
3897 Handle<String> configurable_name = 3896 Handle<String> configurable_name =
3898 isolate->factory()->InternalizeOneByteString( 3897 isolate->factory()->InternalizeOneByteString(
3899 STATIC_CHAR_VECTOR("configurable_")); 3898 STATIC_CHAR_VECTOR("configurable_"));
3900 Handle<Object> configurable = 3899 Handle<Object> configurable =
3901 Object::GetProperty(desc, configurable_name).ToHandleChecked(); 3900 Object::GetProperty(desc, configurable_name).ToHandleChecked();
3902 DCHECK(configurable->IsBoolean()); 3901 DCHECK(configurable->IsBoolean());
3903 if (configurable->IsFalse()) { 3902 if (configurable->IsFalse()) {
3904 Handle<String> trap = isolate->factory()->InternalizeOneByteString( 3903 Handle<String> trap = isolate->factory()->InternalizeOneByteString(
3905 STATIC_CHAR_VECTOR("getPropertyDescriptor")); 3904 STATIC_CHAR_VECTOR("getPropertyDescriptor"));
3906 Handle<Object> args[] = { handler, trap, name }; 3905 THROW_NEW_ERROR(isolate,
3907 THROW_NEW_ERROR(isolate, NewTypeError("proxy_prop_not_configurable", 3906 NewTypeError(MessageTemplate::kProxyPropNotConfigurable,
3908 HandleVector(args, arraysize(args))), 3907 handler, name, trap),
3909 Object); 3908 Object);
3910 } 3909 }
3911 DCHECK(configurable->IsTrue()); 3910 DCHECK(configurable->IsTrue());
3912 3911
3913 // Check for DataDescriptor. 3912 // Check for DataDescriptor.
3914 Handle<String> hasWritable_name = 3913 Handle<String> hasWritable_name =
3915 isolate->factory()->InternalizeOneByteString( 3914 isolate->factory()->InternalizeOneByteString(
3916 STATIC_CHAR_VECTOR("hasWritable_")); 3915 STATIC_CHAR_VECTOR("hasWritable_"));
3917 Handle<Object> hasWritable = 3916 Handle<Object> hasWritable =
3918 Object::GetProperty(desc, hasWritable_name).ToHandleChecked(); 3917 Object::GetProperty(desc, hasWritable_name).ToHandleChecked();
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
4038 ASSIGN_RETURN_ON_EXCEPTION_VALUE(isolate, setter, 4037 ASSIGN_RETURN_ON_EXCEPTION_VALUE(isolate, setter,
4039 Object::GetProperty(desc, set_n), 4038 Object::GetProperty(desc, set_n),
4040 Nothing<PropertyAttributes>()); 4039 Nothing<PropertyAttributes>());
4041 writable = isolate->factory()->ToBoolean(!setter->IsUndefined()); 4040 writable = isolate->factory()->ToBoolean(!setter->IsUndefined());
4042 } 4041 }
4043 4042
4044 if (configurable->IsFalse()) { 4043 if (configurable->IsFalse()) {
4045 Handle<Object> handler(proxy->handler(), isolate); 4044 Handle<Object> handler(proxy->handler(), isolate);
4046 Handle<String> trap = isolate->factory()->InternalizeOneByteString( 4045 Handle<String> trap = isolate->factory()->InternalizeOneByteString(
4047 STATIC_CHAR_VECTOR("getPropertyDescriptor")); 4046 STATIC_CHAR_VECTOR("getPropertyDescriptor"));
4048 Handle<Object> args[] = { handler, trap, name };
4049 Handle<Object> error = isolate->factory()->NewTypeError( 4047 Handle<Object> error = isolate->factory()->NewTypeError(
4050 "proxy_prop_not_configurable", HandleVector(args, arraysize(args))); 4048 MessageTemplate::kProxyPropNotConfigurable, handler, name, trap);
4051 isolate->Throw(*error); 4049 isolate->Throw(*error);
4052 return Just(NONE); 4050 return Just(NONE);
4053 } 4051 }
4054 4052
4055 int attributes = NONE; 4053 int attributes = NONE;
4056 if (!enumerable->BooleanValue()) attributes |= DONT_ENUM; 4054 if (!enumerable->BooleanValue()) attributes |= DONT_ENUM;
4057 if (!configurable->BooleanValue()) attributes |= DONT_DELETE; 4055 if (!configurable->BooleanValue()) attributes |= DONT_DELETE;
4058 if (!writable->BooleanValue()) attributes |= READ_ONLY; 4056 if (!writable->BooleanValue()) attributes |= READ_ONLY;
4059 return Just(static_cast<PropertyAttributes>(attributes)); 4057 return Just(static_cast<PropertyAttributes>(attributes));
4060 } 4058 }
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
4100 4098
4101 Handle<String> trap_name = isolate->factory()->InternalizeUtf8String(name); 4099 Handle<String> trap_name = isolate->factory()->InternalizeUtf8String(name);
4102 Handle<Object> trap; 4100 Handle<Object> trap;
4103 ASSIGN_RETURN_ON_EXCEPTION( 4101 ASSIGN_RETURN_ON_EXCEPTION(
4104 isolate, trap, 4102 isolate, trap,
4105 Object::GetPropertyOrElement(handler, trap_name), 4103 Object::GetPropertyOrElement(handler, trap_name),
4106 Object); 4104 Object);
4107 4105
4108 if (trap->IsUndefined()) { 4106 if (trap->IsUndefined()) {
4109 if (derived.is_null()) { 4107 if (derived.is_null()) {
4110 Handle<Object> args[] = { handler, trap_name };
4111 THROW_NEW_ERROR(isolate, 4108 THROW_NEW_ERROR(isolate,
4112 NewTypeError("handler_trap_missing", 4109 NewTypeError(MessageTemplate::kProxyHandlerTrapMissing,
4113 HandleVector(args, arraysize(args))), 4110 handler, trap_name),
4114 Object); 4111 Object);
4115 } 4112 }
4116 trap = Handle<Object>(derived); 4113 trap = Handle<Object>(derived);
4117 } 4114 }
4118 4115
4119 return Execution::Call(isolate, trap, handler, argc, argv); 4116 return Execution::Call(isolate, trap, handler, argc, argv);
4120 } 4117 }
4121 4118
4122 4119
4123 void JSObject::AllocateStorageForMap(Handle<JSObject> object, Handle<Map> map) { 4120 void JSObject::AllocateStorageForMap(Handle<JSObject> object, Handle<Map> map) {
(...skipping 13039 matching lines...) Expand 10 before | Expand all | Expand 10 after
17163 CompilationInfo* info) { 17160 CompilationInfo* info) {
17164 Handle<DependentCode> codes = DependentCode::InsertCompilationInfo( 17161 Handle<DependentCode> codes = DependentCode::InsertCompilationInfo(
17165 handle(cell->dependent_code(), info->isolate()), 17162 handle(cell->dependent_code(), info->isolate()),
17166 DependentCode::kPropertyCellChangedGroup, info->object_wrapper()); 17163 DependentCode::kPropertyCellChangedGroup, info->object_wrapper());
17167 if (*codes != cell->dependent_code()) cell->set_dependent_code(*codes); 17164 if (*codes != cell->dependent_code()) cell->set_dependent_code(*codes);
17168 info->dependencies(DependentCode::kPropertyCellChangedGroup)->Add( 17165 info->dependencies(DependentCode::kPropertyCellChangedGroup)->Add(
17169 cell, info->zone()); 17166 cell, info->zone());
17170 } 17167 }
17171 17168
17172 } } // namespace v8::internal 17169 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/object-observe.js ('k') | src/proxy.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698