OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 3388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3399 bool HasComplexElements(); | 3399 bool HasComplexElements(); |
3400 | 3400 |
3401 enum SortMode { UNSORTED, SORTED }; | 3401 enum SortMode { UNSORTED, SORTED }; |
3402 | 3402 |
3403 // Fill in details for properties into storage. | 3403 // Fill in details for properties into storage. |
3404 // Returns the number of properties added. | 3404 // Returns the number of properties added. |
3405 int CopyKeysTo(FixedArray* storage, int index, PropertyAttributes filter, | 3405 int CopyKeysTo(FixedArray* storage, int index, PropertyAttributes filter, |
3406 SortMode sort_mode); | 3406 SortMode sort_mode); |
3407 // Collect the keys into the given KeyAccumulator, in ascending chronological | 3407 // Collect the keys into the given KeyAccumulator, in ascending chronological |
3408 // order of property creation. | 3408 // order of property creation. |
3409 void CollectKeysTo(KeyAccumulator* keys, PropertyAttributes filter); | 3409 static void CollectKeysTo(Handle<Dictionary<Derived, Shape, Key> > dictionary, |
| 3410 KeyAccumulator* keys, PropertyAttributes filter); |
3410 | 3411 |
3411 // Copies enumerable keys to preallocated fixed array. | 3412 // Copies enumerable keys to preallocated fixed array. |
3412 void CopyEnumKeysTo(FixedArray* storage); | 3413 void CopyEnumKeysTo(FixedArray* storage); |
3413 | 3414 |
3414 // Accessors for next enumeration index. | 3415 // Accessors for next enumeration index. |
3415 void SetNextEnumerationIndex(int index) { | 3416 void SetNextEnumerationIndex(int index) { |
3416 DCHECK(index != 0); | 3417 DCHECK(index != 0); |
3417 this->set(kNextEnumerationIndexIndex, Smi::FromInt(index)); | 3418 this->set(kNextEnumerationIndexIndex, Smi::FromInt(index)); |
3418 } | 3419 } |
3419 | 3420 |
(...skipping 7303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10723 } | 10724 } |
10724 return value; | 10725 return value; |
10725 } | 10726 } |
10726 }; | 10727 }; |
10727 | 10728 |
10728 | 10729 |
10729 } // NOLINT, false-positive due to second-order macros. | 10730 } // NOLINT, false-positive due to second-order macros. |
10730 } // NOLINT, false-positive due to second-order macros. | 10731 } // NOLINT, false-positive due to second-order macros. |
10731 | 10732 |
10732 #endif // V8_OBJECTS_H_ | 10733 #endif // V8_OBJECTS_H_ |
OLD | NEW |