Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 "src/objects.h" | 5 #include "src/objects.h" |
| 6 | 6 |
| 7 #include <cmath> | 7 #include <cmath> |
| 8 #include <iomanip> | 8 #include <iomanip> |
| 9 #include <sstream> | 9 #include <sstream> |
| 10 | 10 |
| (...skipping 8903 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 8914 Isolate* isolate = object->GetIsolate(); | 8914 Isolate* isolate = object->GetIsolate(); |
| 8915 KeyAccumulator accumulator(isolate, filter); | 8915 KeyAccumulator accumulator(isolate, filter); |
| 8916 MAYBE_RETURN( | 8916 MAYBE_RETURN( |
| 8917 GetKeys_Internal(isolate, object, object, type, filter, &accumulator), | 8917 GetKeys_Internal(isolate, object, object, type, filter, &accumulator), |
| 8918 MaybeHandle<FixedArray>()); | 8918 MaybeHandle<FixedArray>()); |
| 8919 Handle<FixedArray> keys = accumulator.GetKeys(keys_conversion); | 8919 Handle<FixedArray> keys = accumulator.GetKeys(keys_conversion); |
| 8920 DCHECK(ContainsOnlyValidKeys(keys)); | 8920 DCHECK(ContainsOnlyValidKeys(keys)); |
| 8921 return keys; | 8921 return keys; |
| 8922 } | 8922 } |
| 8923 | 8923 |
| 8924 MaybeHandle<FixedArray> JSReceiver::GetOwnValues( | |
| 8925 Handle<JSReceiver> object, PropertyFilter filter, | |
| 8926 GetKeysConversion keys_conversion) { | |
| 8927 USE(ContainsOnlyValidKeys); | |
|
Camillo Bruni
2016/02/03 12:03:48
Probably you wanted to add a DCHECK(ContainsOnlyVa
caitp (gmail)
2016/02/03 12:57:30
Not sure why I added this, copy/paste code? There
| |
| 8928 Isolate* isolate = object->GetIsolate(); | |
| 8929 KeyAccumulator accumulator(isolate, filter); | |
| 8930 MAYBE_RETURN( | |
| 8931 GetKeys_Internal(isolate, object, object, OWN_ONLY, filter, &accumulator), | |
| 8932 MaybeHandle<FixedArray>()); | |
| 8933 return accumulator.GetValues(object, keys_conversion); | |
| 8934 } | |
| 8935 | |
| 8936 MaybeHandle<FixedArray> JSReceiver::GetOwnEntries( | |
| 8937 Handle<JSReceiver> object, PropertyFilter filter, | |
| 8938 GetKeysConversion keys_conversion) { | |
| 8939 USE(ContainsOnlyValidKeys); | |
|
Camillo Bruni
2016/02/03 12:03:49
same here :)
| |
| 8940 Isolate* isolate = object->GetIsolate(); | |
| 8941 KeyAccumulator accumulator(isolate, filter); | |
| 8942 MAYBE_RETURN( | |
| 8943 GetKeys_Internal(isolate, object, object, OWN_ONLY, filter, &accumulator), | |
| 8944 MaybeHandle<FixedArray>()); | |
| 8945 return accumulator.GetEntries(object, keys_conversion); | |
| 8946 } | |
| 8924 | 8947 |
| 8925 bool Map::DictionaryElementsInPrototypeChainOnly() { | 8948 bool Map::DictionaryElementsInPrototypeChainOnly() { |
| 8926 if (IsDictionaryElementsKind(elements_kind())) { | 8949 if (IsDictionaryElementsKind(elements_kind())) { |
| 8927 return false; | 8950 return false; |
| 8928 } | 8951 } |
| 8929 | 8952 |
| 8930 for (PrototypeIterator iter(this); !iter.IsAtEnd(); iter.Advance()) { | 8953 for (PrototypeIterator iter(this); !iter.IsAtEnd(); iter.Advance()) { |
| 8931 // Be conservative, don't walk into proxies. | 8954 // Be conservative, don't walk into proxies. |
| 8932 if (iter.GetCurrent()->IsJSProxy()) return true; | 8955 if (iter.GetCurrent()->IsJSProxy()) return true; |
| 8933 // String wrappers have non-configurable, non-writable elements. | 8956 // String wrappers have non-configurable, non-writable elements. |
| (...skipping 10815 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 19749 if (cell->value() != *new_value) { | 19772 if (cell->value() != *new_value) { |
| 19750 cell->set_value(*new_value); | 19773 cell->set_value(*new_value); |
| 19751 Isolate* isolate = cell->GetIsolate(); | 19774 Isolate* isolate = cell->GetIsolate(); |
| 19752 cell->dependent_code()->DeoptimizeDependentCodeGroup( | 19775 cell->dependent_code()->DeoptimizeDependentCodeGroup( |
| 19753 isolate, DependentCode::kPropertyCellChangedGroup); | 19776 isolate, DependentCode::kPropertyCellChangedGroup); |
| 19754 } | 19777 } |
| 19755 } | 19778 } |
| 19756 | 19779 |
| 19757 } // namespace internal | 19780 } // namespace internal |
| 19758 } // namespace v8 | 19781 } // namespace v8 |
| OLD | NEW |