8eadbe5cb0
Currently, the private name symbols are displayed in the block scopes in DevTools, though these are just implementation details of private fields. This patch hides them from the block scope by marking variables with names starting with `#` as synthetic. The private fields are still going to show up in the previews of objects, only the key symbols themselves are going to be hidden. Bug: v8:8773, chromium:982267 Change-Id: I059472d05c26a1f035ab92718a1b7e5ecafa8dc4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1741846 Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Joyee Cheung <joyee@igalia.com> Cr-Commit-Position: refs/heads/master@{#63112}
142 lines
3.6 KiB
Plaintext
142 lines
3.6 KiB
Plaintext
Test private class fields in scopes
|
|
|
|
Running test: testScopesPaused
|
|
[
|
|
[0] : {
|
|
callFrameId : <callFrameId>
|
|
functionLocation : {
|
|
columnNumber : 16
|
|
lineNumber : 4
|
|
scriptId : <scriptId>
|
|
}
|
|
functionName : A
|
|
location : {
|
|
columnNumber : 6
|
|
lineNumber : 5
|
|
scriptId : <scriptId>
|
|
}
|
|
scopeChain : [
|
|
[0] : {
|
|
endLocation : {
|
|
columnNumber : 5
|
|
lineNumber : 6
|
|
scriptId : <scriptId>
|
|
}
|
|
name : A
|
|
object : {
|
|
className : Object
|
|
description : Object
|
|
objectId : <objectId>
|
|
type : object
|
|
}
|
|
startLocation : {
|
|
columnNumber : 16
|
|
lineNumber : 4
|
|
scriptId : <scriptId>
|
|
}
|
|
type : local
|
|
}
|
|
[1] : {
|
|
object : {
|
|
className : global
|
|
description : global
|
|
objectId : <objectId>
|
|
type : object
|
|
}
|
|
type : global
|
|
}
|
|
]
|
|
this : {
|
|
className : A
|
|
description : A
|
|
objectId : <objectId>
|
|
type : object
|
|
}
|
|
url :
|
|
}
|
|
[1] : {
|
|
callFrameId : <callFrameId>
|
|
functionLocation : {
|
|
columnNumber : 12
|
|
lineNumber : 1
|
|
scriptId : <scriptId>
|
|
}
|
|
functionName : run
|
|
location : {
|
|
columnNumber : 2
|
|
lineNumber : 8
|
|
scriptId : <scriptId>
|
|
}
|
|
scopeChain : [
|
|
[0] : {
|
|
endLocation : {
|
|
columnNumber : 1
|
|
lineNumber : 9
|
|
scriptId : <scriptId>
|
|
}
|
|
name : run
|
|
object : {
|
|
className : Object
|
|
description : Object
|
|
objectId : <objectId>
|
|
type : object
|
|
}
|
|
startLocation : {
|
|
columnNumber : 12
|
|
lineNumber : 1
|
|
scriptId : <scriptId>
|
|
}
|
|
type : local
|
|
}
|
|
[1] : {
|
|
object : {
|
|
className : global
|
|
description : global
|
|
objectId : <objectId>
|
|
type : object
|
|
}
|
|
type : global
|
|
}
|
|
]
|
|
this : {
|
|
className : global
|
|
description : global
|
|
objectId : <objectId>
|
|
type : object
|
|
}
|
|
url :
|
|
}
|
|
[2] : {
|
|
callFrameId : <callFrameId>
|
|
functionLocation : {
|
|
columnNumber : 0
|
|
lineNumber : 0
|
|
scriptId : <scriptId>
|
|
}
|
|
functionName :
|
|
location : {
|
|
columnNumber : 0
|
|
lineNumber : 0
|
|
scriptId : <scriptId>
|
|
}
|
|
scopeChain : [
|
|
[0] : {
|
|
object : {
|
|
className : global
|
|
description : global
|
|
objectId : <objectId>
|
|
type : object
|
|
}
|
|
type : global
|
|
}
|
|
]
|
|
this : {
|
|
className : global
|
|
description : global
|
|
objectId : <objectId>
|
|
type : object
|
|
}
|
|
url :
|
|
}
|
|
]
|