Chromium Code Reviews| Index: src/objects.h |
| diff --git a/src/objects.h b/src/objects.h |
| index 103e93e8c4ac2547bea8167c190803000071ea6a..4add6d618ec7fd571fead34b4ddb3c863abbdd55 100644 |
| --- a/src/objects.h |
| +++ b/src/objects.h |
| @@ -3582,6 +3582,11 @@ class Dictionary: public HashTable<Derived, Shape, Key> { |
| Handle<Object> value, |
| PropertyDetails details); |
| + // Returns iteration indices array for the |dictionary|. |
| + // Values are direct indexes in the |HashTable| array. |
|
Jakob Kummerow
2014/10/06 11:47:36
nit: s/indexes/indices/ for consistency.
Igor Sheludko
2014/10/20 14:05:24
Done.
|
| + static Handle<FixedArray> BuildNewIterationIndices( |
| + Handle<Derived> dictionary); |
| + |
| protected: |
| // Generic at put operation. |
| MUST_USE_RESULT static Handle<Derived> AtPut( |
| @@ -3598,7 +3603,9 @@ class Dictionary: public HashTable<Derived, Shape, Key> { |
| uint32_t hash); |
| // Generate new enumeration indices to avoid enumeration index overflow. |
| - static void GenerateNewEnumerationIndices(Handle<Derived> dictionary); |
| + // Returns iteration indices array for the |dictionary|. |
| + static Handle<FixedArray> GenerateNewEnumerationIndices( |
| + Handle<Derived> dictionary); |
| static const int kMaxNumberKeyIndex = DerivedHashTable::kPrefixStartIndex; |
| static const int kNextEnumerationIndexIndex = kMaxNumberKeyIndex + 1; |
| }; |
| @@ -3627,7 +3634,7 @@ class NameDictionary: public Dictionary<NameDictionary, |
| // Copies enumerable keys to preallocated fixed array. |
| void CopyEnumKeysTo(FixedArray* storage); |
| - inline static void DoGenerateNewEnumerationIndices( |
| + inline static Handle<FixedArray> DoGenerateNewEnumerationIndices( |
| Handle<NameDictionary> dictionary); |
| // Find entry for key, otherwise return kNotFound. Optimized version of |