Index: src/keys.h |
diff --git a/src/keys.h b/src/keys.h |
index 1fd3fc02b033bbf25d355464dc59edc510c9f2ed..e24064699d694f2b127c77af18723f7db6d2fe86 100644 |
--- a/src/keys.h |
+++ b/src/keys.h |
@@ -2,8 +2,8 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef V8_KEY_ACCUMULATOR_H_ |
-#define V8_KEY_ACCUMULATOR_H_ |
+#ifndef V8_KEYS_H_ |
+#define V8_KEYS_H_ |
#include "src/isolate.h" |
#include "src/objects.h" |
@@ -53,6 +53,16 @@ class KeyAccumulator final BASE_EMBEDDED { |
int length() { return length_; } |
Isolate* isolate() { return isolate_; } |
void set_filter_proxy_keys(bool filter) { filter_proxy_keys_ = filter; } |
+ PropertyFilter filter() { return filter_; } |
+ |
+ Maybe<bool> GetKeys_Internal(Handle<JSReceiver> receiver, |
+ Handle<JSReceiver> object, |
+ KeyCollectionType type); |
+ static Handle<FixedArray> GetEnumPropertyKeys(Isolate* isolate, |
+ Handle<JSObject> object); |
+ |
+ void CollectOwnElementKeys(Handle<JSObject> object); |
+ void CollectOwnPropertyNames(Handle<JSObject> object); |
private: |
bool AddIntegerKey(uint32_t key); |
@@ -60,6 +70,12 @@ class KeyAccumulator final BASE_EMBEDDED { |
bool AddSymbolKey(Handle<Object> array); |
void SortCurrentElementsListRemoveDuplicates(); |
+ Maybe<bool> JSProxyOwnPropertyKeys(Handle<JSReceiver> receiver, |
+ Handle<JSProxy> proxy); |
+ Maybe<bool> GetKeysFromJSObject(Handle<JSReceiver> receiver, |
+ Handle<JSObject> object, |
+ KeyCollectionType type); |
+ |
Isolate* isolate_; |
KeyCollectionType type_; |
PropertyFilter filter_; |
@@ -126,4 +142,4 @@ class FastKeyAccumulator { |
} // namespace internal |
} // namespace v8 |
-#endif // V8_KEY_ACCUMULATOR_H_ |
+#endif // V8_KEYS_H_ |