v8/test/inspector/debugger/class-private-methods-static-preview-expected.txt
Joyee Cheung 0ea5b5248d [class] implement inspector support for static private methods
When looking for private members in an object for the inspector,
we check if that object is a class constructor with the a bit
has_static_private_methods set on its SFI. If it
is, we look for any variables in the context locals
with a VariableMode associated with private methods or accessors
and a IsStaticFlag being kStatic.

This patch also filters out static private methods when inspecting
instances.

Design doc: https://docs.google.com/document/d/1N91LObhQexnB0eE7EvGe57HsvNMFX16CaWu-XCTnnmY/edit
See also: https://docs.google.com/document/d/14maU596YbHcWR7XR-_iXM_ANhAAmiuRlJZysM61lqaE/edit

Bug: v8:9839, v8:8330
Change-Id: Idad15349c983898de2ce632c38b0174da10e639d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1955664
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Commit-Queue: Joyee Cheung <joyee@igalia.com>
Cr-Commit-Position: refs/heads/master@{#66636}
2020-03-09 20:19:17 +00:00

29 lines
1006 B
Plaintext

Check static private methods in object preview.
Running test: testPrivateMethods
expression: class { static get #readOnly() { return 1; } }
{
type : string
value : class { static get #readOnly() { return 1; } }
}
expression: class { static set #writeOnly(val) { } }
{
type : string
value : class { static set #writeOnly(val) { } }
}
expression: class { static #method() { return 1; } static get #accessor() { } static set #accessor(val) { } }
{
type : string
value : class { static #method() { return 1; } static get #accessor() { } static set #accessor(val) { } }
}
expression: class extends class { } { static #method() { return 1; } }
{
type : string
value : class extends class { } { static #method() { return 1; } }
}
expression: class extends class { static #method() { return 1; } } { get #accessor() { } set #accessor(val) { } }
{
type : string
value : class extends class { static #method() { return 1; } } { get #accessor() { } set #accessor(val) { } }
}