Index: src/runtime.cc |
diff --git a/src/runtime.cc b/src/runtime.cc |
index 12b753b459184ee759b2f52d9c7f3a8e2cad7c73..31e02ca4081b94a2eb61df9c37a842ae920d9e6c 100644 |
--- a/src/runtime.cc |
+++ b/src/runtime.cc |
@@ -1115,7 +1115,7 @@ static MaybeObject* GetOwnProperty(Isolate* isolate, |
elms->set(ENUMERABLE_INDEX, heap->ToBoolean(!result.IsDontEnum())); |
elms->set(CONFIGURABLE_INDEX, heap->ToBoolean(!result.IsDontDelete())); |
- bool is_js_accessor = (result.type() == CALLBACKS) && |
+ bool is_js_accessor = result.IsCallbacks() && |
(result.GetCallbackObject()->IsAccessorPair()); |
if (is_js_accessor) { |
@@ -1327,7 +1327,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareGlobals) { |
if (lookup.IsProperty()) { |
// We found an existing property. Unless it was an interceptor |
// that claims the property is absent, skip this declaration. |
- if (lookup.type() != INTERCEPTOR) continue; |
+ if (!lookup.IsInterceptor()) continue; |
PropertyAttributes attributes = global->GetPropertyAttribute(*name); |
if (attributes != ABSENT) continue; |
// Fall-through and introduce the absent property by using |
@@ -1365,7 +1365,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareGlobals) { |
// as required for function declarations. |
if (lookup.IsProperty() && lookup.IsDontDelete()) { |
if (lookup.IsReadOnly() || lookup.IsDontEnum() || |
- lookup.type() == CALLBACKS) { |
+ lookup.IsCallbacks()) { |
return ThrowRedeclarationError( |
isolate, is_function ? "function" : "module", name); |
} |
@@ -1474,7 +1474,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareContextSlot) { |
!object->IsJSContextExtensionObject()) { |
LookupResult lookup(isolate); |
object->Lookup(*name, &lookup); |
- if (lookup.IsFound() && (lookup.type() == CALLBACKS)) { |
+ if (lookup.IsCallbacks()) { |
return ThrowRedeclarationError(isolate, "const", name); |
} |
} |
@@ -1527,7 +1527,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeVarGlobal) { |
JSObject::cast(object)->map()->is_hidden_prototype()) { |
JSObject* raw_holder = JSObject::cast(object); |
raw_holder->LocalLookup(*name, &lookup); |
- if (lookup.IsFound() && lookup.type() == INTERCEPTOR) { |
+ if (lookup.IsInterceptor()) { |
HandleScope handle_scope(isolate); |
Handle<JSObject> holder(raw_holder); |
PropertyAttributes intercepted = holder->GetPropertyAttribute(*name); |
@@ -1605,14 +1605,13 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeConstGlobal) { |
// constant. For now, we determine this by checking if the |
// current value is the hole. |
// Strict mode handling not needed (const is disallowed in strict mode). |
- PropertyType type = lookup.type(); |
- if (type == FIELD) { |
+ if (lookup.IsField()) { |
FixedArray* properties = global->properties(); |
int index = lookup.GetFieldIndex(); |
if (properties->get(index)->IsTheHole() || !lookup.IsReadOnly()) { |
properties->set(index, *value); |
} |
- } else if (type == NORMAL) { |
+ } else if (lookup.IsNormal()) { |
if (global->GetNormalizedProperty(&lookup)->IsTheHole() || |
!lookup.IsReadOnly()) { |
global->SetNormalizedProperty(&lookup, *value); |
@@ -1620,7 +1619,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeConstGlobal) { |
} else { |
// Ignore re-initialization of constants that have already been |
// assigned a function value. |
- ASSERT(lookup.IsReadOnly() && type == CONSTANT_FUNCTION); |
+ ASSERT(lookup.IsReadOnly() && lookup.IsConstantFunction()); |
} |
// Use the set value as the result of the operation. |
@@ -1696,14 +1695,13 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeConstContextSlot) { |
ASSERT(lookup.IsFound()); // the property was declared |
ASSERT(lookup.IsReadOnly()); // and it was declared as read-only |
- PropertyType type = lookup.type(); |
- if (type == FIELD) { |
+ if (lookup.IsField()) { |
FixedArray* properties = object->properties(); |
int index = lookup.GetFieldIndex(); |
if (properties->get(index)->IsTheHole()) { |
properties->set(index, *value); |
} |
- } else if (type == NORMAL) { |
+ } else if (lookup.IsNormal()) { |
if (object->GetNormalizedProperty(&lookup)->IsTheHole()) { |
object->SetNormalizedProperty(&lookup, *value); |
} |
@@ -4372,7 +4370,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_KeyedGetProperty) { |
// appropriate. |
LookupResult result(isolate); |
receiver->LocalLookup(key, &result); |
- if (result.IsFound() && result.type() == FIELD) { |
+ if (result.IsField()) { |
int offset = result.GetFieldIndex(); |
keyed_lookup_cache->Update(receiver_map, key, offset); |
return receiver->FastPropertyAt(offset); |
@@ -4484,7 +4482,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DefineOrRedefineDataProperty) { |
js_object->LocalLookupRealNamedProperty(*name, &result); |
// Special case for callback properties. |
- if (result.IsFound() && result.type() == CALLBACKS) { |
+ if (result.IsCallbacks()) { |
Object* callback = result.GetCallbackObject(); |
// To be compatible with Safari we do not change the value on API objects |
// in Object.defineProperty(). Firefox disagrees here, and actually changes |
@@ -4512,7 +4510,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DefineOrRedefineDataProperty) { |
// correctly in the case where a property is a field and is reset with |
// new attributes. |
if (result.IsProperty() && |
- (attr != result.GetAttributes() || result.type() == CALLBACKS)) { |
+ (attr != result.GetAttributes() || result.IsCallbacks())) { |
// New attributes - normalize to avoid writing to instance descriptor |
if (js_object->IsJSGlobalProxy()) { |
// Since the result is a property, the prototype will exist so |
@@ -10364,9 +10362,8 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DebugGetPropertyDetails) { |
// LookupResult is not GC safe as it holds raw object pointers. |
// GC can happen later in this code so put the required fields into |
// local variables using handles when required for later use. |
- PropertyType result_type = result.type(); |
Handle<Object> result_callback_obj; |
- if (result_type == CALLBACKS) { |
+ if (result.IsCallbacks()) { |
result_callback_obj = Handle<Object>(result.GetCallbackObject(), |
isolate); |
} |
@@ -10384,7 +10381,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DebugGetPropertyDetails) { |
// If the callback object is a fixed array then it contains JavaScript |
// getter and/or setter. |
- bool hasJavaScriptAccessors = result_type == CALLBACKS && |
+ bool hasJavaScriptAccessors = result.IsCallbacks() && |
result_callback_obj->IsAccessorPair(); |
Handle<FixedArray> details = |
isolate->factory()->NewFixedArray(hasJavaScriptAccessors ? 5 : 2); |