[class] hide private name symbols from the block scope in DevTools

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}
3 files changed
tree: 4ace7dc9fefc0f78466f980d3a0da857335a0704
  1. .clang-format
  2. .clang-tidy
  3. .editorconfig
  4. .flake8
  5. .git-blame-ignore-revs
  6. .gitattributes
  7. .gitignore
  8. .gn
  9. .vpython
  10. .ycm_extra_conf.py
  11. AUTHORS
  12. BUILD.gn
  13. CODE_OF_CONDUCT.md
  14. COMMON_OWNERS
  15. ChangeLog
  16. DEPS
  17. ENG_REVIEW_OWNERS
  18. INFRA_OWNERS
  19. INTL_OWNERS
  20. LICENSE
  21. LICENSE.fdlibm
  22. LICENSE.strongtalk
  23. LICENSE.v8
  24. LICENSE.valgrind
  25. MIPS_OWNERS
  26. OWNERS
  27. PPC_OWNERS
  28. PRESUBMIT.py
  29. README.md
  30. S390_OWNERS
  31. WATCHLISTS
  32. benchmarks/
  33. build_overrides/
  34. codereview.settings
  35. custom_deps/
  36. docs/
  37. gni/
  38. include/
  39. infra/
  40. samples/
  41. src/
  42. test/
  43. testing/
  44. third_party/
  45. tools/
README.md

V8 JavaScript Engine

V8 is Google's open source JavaScript engine.

V8 implements ECMAScript as specified in ECMA-262.

V8 is written in C++ and is used in Google Chrome, the open source browser from Google.

V8 can run standalone, or can be embedded into any C++ application.

V8 Project page: https://v8.dev/docs

Getting the Code

Checkout depot tools, and run

    fetch v8

This will checkout V8 into the directory v8 and fetch all of its dependencies. To stay up to date, run

    git pull origin
    gclient sync

For fetching all branches, add the following into your remote configuration in .git/config:

    fetch = +refs/branch-heads/*:refs/remotes/branch-heads/*
    fetch = +refs/tags/*:refs/tags/*

Contributing

Please follow the instructions mentioned at v8.dev/docs/contribute.