ed66588041
of non-pattern expressions, according to the (internally circulated) design document. Details to be provided here. 1. RewritableAssignmentExpression has been renamed to RewritableExpression. It is a wrapper for AST nodes that wait for some potential rewriting (that may or may not happen). Also, Is... and As... macros now see through RewritableExpressions. 2. The function state keeps a list of rewritable expressions that must be rewritten only if they are used as non-pattern expressions. 3. Expression classifiers are now templates, parameterized by parser traits. They keep some additional state: a pointer to the list of non-pattern rewritable expressions. It is important that expression classifiers be used strictly in a stack fashion, from now on. 4. The RewriteNonPattern function has been simplified. BUG=chromium:579913 LOG=N Committed: https://crrev.com/7f5c864a6faf2b957b7273891e143b9bde35487c Cr-Commit-Position: refs/heads/master@{#34154} Review URL: https://codereview.chromium.org/1702063002 Cr-Commit-Position: refs/heads/master@{#34162} |
||
---|---|---|
benchmarks | ||
build | ||
docs | ||
include | ||
infra | ||
samples | ||
src | ||
test | ||
testing | ||
third_party/binutils | ||
tools | ||
.clang-format | ||
.gitignore | ||
.ycm_extra_conf.py | ||
AUTHORS | ||
BUILD.gn | ||
ChangeLog | ||
codereview.settings | ||
DEPS | ||
LICENSE | ||
LICENSE.strongtalk | ||
LICENSE.v8 | ||
LICENSE.valgrind | ||
Makefile | ||
Makefile.android | ||
Makefile.nacl | ||
OWNERS | ||
PRESUBMIT.py | ||
README.md | ||
snapshot_toolchain.gni | ||
WATCHLISTS |
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://github.com/v8/v8/wiki
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 on the V8 wiki.