Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(832)

Unified Diff: src/preparse-data.h

Issue 1164073003: [es6] super.prop, eval and lazy functions (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Make the logger use 2 fields Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/parser.cc ('k') | src/preparse-data-format.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/preparse-data.h
diff --git a/src/preparse-data.h b/src/preparse-data.h
index 0cfef9125bcb1ecc84170bf6813f771791b58317..f7ed1ed91ad686aab2b7523ed75c4ef9461719b8 100644
--- a/src/preparse-data.h
+++ b/src/preparse-data.h
@@ -53,8 +53,8 @@ class ParserRecorder {
// Logs the scope and some details of a function literal in the source.
virtual void LogFunction(int start, int end, int literals, int properties,
- LanguageMode language_mode,
- bool uses_super_property) = 0;
+ LanguageMode language_mode, bool uses_super_property,
+ bool calls_eval) = 0;
// Logs an error message and marks the log as containing an error.
// Further logging will be ignored, and ExtractData will return a vector
@@ -77,15 +77,16 @@ class SingletonLogger : public ParserRecorder {
void Reset() { has_error_ = false; }
virtual void LogFunction(int start, int end, int literals, int properties,
- LanguageMode language_mode,
- bool scope_uses_super_property) {
+ LanguageMode language_mode, bool uses_super_property,
+ bool calls_eval) {
DCHECK(!has_error_);
start_ = start;
end_ = end;
literals_ = literals;
properties_ = properties;
language_mode_ = language_mode;
- scope_uses_super_property_ = scope_uses_super_property;
+ uses_super_property_ = uses_super_property;
+ calls_eval_ = calls_eval;
}
// Logs an error message and marks the log as containing an error.
@@ -118,9 +119,13 @@ class SingletonLogger : public ParserRecorder {
DCHECK(!has_error_);
return language_mode_;
}
- bool scope_uses_super_property() const {
+ bool uses_super_property() const {
DCHECK(!has_error_);
- return scope_uses_super_property_;
+ return uses_super_property_;
+ }
+ bool calls_eval() const {
+ DCHECK(!has_error_);
+ return calls_eval_;
}
ParseErrorType error_type() const {
DCHECK(has_error_);
@@ -143,7 +148,8 @@ class SingletonLogger : public ParserRecorder {
int literals_;
int properties_;
LanguageMode language_mode_;
- bool scope_uses_super_property_;
+ bool uses_super_property_;
+ bool calls_eval_;
// For error messages.
MessageTemplate::Template message_;
const char* argument_opt_;
@@ -162,14 +168,15 @@ class CompleteParserRecorder : public ParserRecorder {
virtual ~CompleteParserRecorder() {}
virtual void LogFunction(int start, int end, int literals, int properties,
- LanguageMode language_mode,
- bool scope_uses_super_property) {
+ LanguageMode language_mode, bool uses_super_property,
+ bool calls_eval) {
function_store_.Add(start);
function_store_.Add(end);
function_store_.Add(literals);
function_store_.Add(properties);
function_store_.Add(language_mode);
- function_store_.Add(scope_uses_super_property);
+ function_store_.Add(uses_super_property);
+ function_store_.Add(calls_eval);
}
// Logs an error message and marks the log as containing an error.
« no previous file with comments | « src/parser.cc ('k') | src/preparse-data-format.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698