Go to file
nikolaos ad6ea93227 [parser] Refactor AstTraversalVisitor
This patch parametrizes AstTraversalVisitor by the actual subclass,
in a similar way as AstVisitor is parametrized.  This allows a
subclass to, e.g., override the Visit method and still use the
traversal mechanism.  It also allows the subclass to override the
specific visiting methods, without them being virtual.

This patch also removes AstExpressionVisitor, subsuming its
functionality in AstTraversalVisitor.

R=adamk@chromium.org, verwaest@chromium.org
BUG=
LOG=N

Review-Url: https://codereview.chromium.org/2169833002
Cr-Commit-Position: refs/heads/master@{#37998}
2016-07-25 08:35:10 +00:00
benchmarks Revert "Refactoring: Make gtest testsuite the default." 2014-09-02 09:17:26 +00:00
build_overrides [gn] Fix v8_enable_gdbjit default 2016-07-18 14:52:59 +00:00
docs [Docs] Removed unused docs because they are moved to GitHub 2015-11-19 10:23:30 +00:00
gni Revert "Enable v8 backtrace support in all debug builds" 2016-07-22 18:15:40 +00:00
gypfiles Reland "[interpeter] Move to table based peephole optimizer." 2016-07-19 11:56:33 +00:00
include [debugger] remove deprecated api functions. 2016-07-20 08:52:18 +00:00
infra [tools] Build generator script 2016-07-21 13:23:44 +00:00
samples Provide a convenience array buffer allocator 2016-06-29 07:42:40 +00:00
src [parser] Refactor AstTraversalVisitor 2016-07-25 08:35:10 +00:00
test Native try-catch syntax parsing should not crash. 2016-07-25 05:32:28 +00:00
testing Converted V8 CQ config to proto-format 2015-05-28 15:02:53 +00:00
third_party/binutils Update binutils version to match Chromium. 2016-07-08 07:03:29 +00:00
tools Update heap constants from ToT 2016-07-22 11:49:17 +00:00
.clang-format [formatting] Remove the formatting requirement for 2 empty lines between declarations. 2016-01-25 09:50:17 +00:00
.gitignore [test262] Use standalone Test262 harness project 2016-07-22 15:25:32 +00:00
.gn [gn] Use one source of truth for test source files. 2016-06-28 13:24:08 +00:00
.ycm_extra_conf.py Use C++11 / gnu++11, not 0x 2016-03-22 15:24:43 +00:00
AUTHORS Updating the code example in FunctionTemplate class documentation 2016-07-14 06:34:26 +00:00
BUILD.gn [parser] Refactor AstTraversalVisitor 2016-07-25 08:35:10 +00:00
ChangeLog [Release] Update ChangeLog file 2016-02-17 21:29:09 +00:00
CODE_OF_CONDUCT.md Explicitly state that the Chromium Code of Conduct also applies to V8 2016-03-02 09:51:24 +00:00
codereview.settings Use v8-reviews@ for review mail, so v8-dev@ is free for dev discussions 2015-09-09 08:14:11 +00:00
DEPS Update V8 DEPS. 2016-07-23 03:22:20 +00:00
LICENSE Updates to the license information of third party components. 2015-06-16 12:37:50 +00:00
LICENSE.fdlibm Add LICENSE.fdlibm for all the fdlibm imported sources. 2016-06-09 07:17:03 +00:00
LICENSE.strongtalk Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.v8 Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.valgrind Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
Makefile [test] Remove presubmit logic from test runner. 2016-06-30 14:30:43 +00:00
Makefile.android [build] Fix d8-for-Android builds 2016-05-20 12:10:45 +00:00
Makefile.nacl [gn] Move build to gypfiles 2016-04-29 10:11:11 +00:00
OWNERS Adding some wasm committers to top level OWNERS. 2016-06-28 16:28:06 +00:00
PRESUBMIT.py Enable check for non-gender neutral pronouns 2016-06-23 07:15:18 +00:00
README.md [Docs] Removed unused docs because they are moved to GitHub 2015-11-19 10:23:30 +00:00
snapshot_toolchain.gni Revert of Re-land "Fix double-building of v8 in GN builds" (patchset #2 id:20001 of https://codereview.chromium.org/2171083003/ ) 2016-07-22 13:22:21 +00:00
WATCHLISTS Remove myself from v8 WATCHLISTS 2016-07-04 14:45:04 +00:00

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.