Index: third_party/WebKit/Source/platform/v8_inspector/V8DebuggerImpl.cpp |
diff --git a/third_party/WebKit/Source/platform/v8_inspector/V8DebuggerImpl.cpp b/third_party/WebKit/Source/platform/v8_inspector/V8DebuggerImpl.cpp |
index 27396fc72dce1c85dde16cfdafd4226bebdd7ded..7131235367f5e2022087a7346946dee6259989eb 100644 |
--- a/third_party/WebKit/Source/platform/v8_inspector/V8DebuggerImpl.cpp |
+++ b/third_party/WebKit/Source/platform/v8_inspector/V8DebuggerImpl.cpp |
@@ -664,6 +664,23 @@ v8::MaybeLocal<v8::Value> V8DebuggerImpl::functionScopes(v8::Local<v8::Function> |
return callDebuggerMethod("getFunctionScopes", 1, argv); |
} |
+v8::MaybeLocal<v8::Array> V8DebuggerImpl::internalProperties(v8::Local<v8::Value> value) |
+{ |
+ v8::Local<v8::Array> properties; |
+ if (!v8::Debug::GetInternalProperties(m_isolate, value).ToLocal(&properties)) |
+ return v8::MaybeLocal<v8::Array>(); |
+ if (!enabled()) |
+ return properties; |
+ if (value->IsMap() || value->IsWeakMap() || value->IsSet() || value->IsWeakSet() || value->IsSetIterator() || value->IsMapIterator()) { |
+ v8::Local<v8::Value> entries = collectionEntries(v8::Local<v8::Object>::Cast(value)); |
+ if (entries->IsArray()) { |
+ properties->Set(properties->Length(), v8InternalizedString("[[Entries]]")); |
+ properties->Set(properties->Length(), entries); |
+ } |
+ } |
+ return properties; |
+} |
+ |
v8::Local<v8::Value> V8DebuggerImpl::generatorObjectDetails(v8::Local<v8::Object>& object) |
{ |
if (!enabled()) { |
@@ -674,7 +691,7 @@ v8::Local<v8::Value> V8DebuggerImpl::generatorObjectDetails(v8::Local<v8::Object |
return callDebuggerMethod("getGeneratorObjectDetails", 1, argv).ToLocalChecked(); |
} |
-v8::Local<v8::Value> V8DebuggerImpl::collectionEntries(v8::Local<v8::Object>& object) |
+v8::Local<v8::Value> V8DebuggerImpl::collectionEntries(v8::Local<v8::Object> object) |
{ |
if (!enabled()) { |
NOTREACHED(); |