commit | fe6b76d4911f6934359a5ca368c0a75f74110179 | [log] [tgz] |
---|---|---|
author | bakkot <bakkot@google.com> | Fri Sep 16 00:42:30 2016 |
committer | Commit bot <commit-bot@chromium.org> | Fri Sep 16 00:42:46 2016 |
tree | 5a78f34300a9908da003f11c1daa62e01f086838 | |
parent | 9df94139d8e240762e9bc9f29b86648ae78f7627 [diff] |
Class fields, part 1 (parsing and infrastructure) This is one part of a WIP implementation of the stage-2 proposal to add fields to classes: https://github.com/tc39/proposal-class-public-fields See design doc: https://docs.google.com/document/d/1WRtNm3ZLNJT1WVr8aq4RJuByYgfuAFAhj20LwTW6JVE/ This adds support for parsing fields in classes, including infrastructure. In particular, it adds: * Two booleans on function literal AST nodes * Two compiler hints on SharedFunctionInfos representing said bools * A new type of ClassLiteralProperty, FIELD * Parser support for the syntax * Syntax tests * A flag to enable it. Currently the fields are parsed and then droppped. Subsequent patches will add semantics, mostly by desugaring in the parser and the remainder in the non-crankshaft backends. BUG=v8:5367 Review-Url: https://codereview.chromium.org/2315733003 Cr-Commit-Position: refs/heads/master@{#39459}
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://github.com/v8/v8/wiki
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/*
Please follow the instructions mentioned on the V8 wiki.