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

Unified Diff: src/parsing/preparser.h

Issue 2474393003: [parser] Give preparser and parser independent loggers (Closed)
Patch Set: Created 4 years, 1 month 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
Index: src/parsing/preparser.h
diff --git a/src/parsing/preparser.h b/src/parsing/preparser.h
index e109656a228d664a40430f6e3e5b048b53109c95..92305f68b7c4654f8c0f1674d22ae13d57fc2b62 100644
--- a/src/parsing/preparser.h
+++ b/src/parsing/preparser.h
@@ -838,12 +838,14 @@ class PreParser : public ParserBase<PreParser> {
};
PreParser(Zone* zone, Scanner* scanner, AstValueFactory* ast_value_factory,
- ParserRecorder* log, uintptr_t stack_limit)
- : ParserBase<PreParser>(zone, scanner, stack_limit, NULL,
- ast_value_factory, log),
+ uintptr_t stack_limit)
+ : ParserBase<PreParser>(zone, scanner, stack_limit, nullptr,
+ ast_value_factory),
use_counts_(nullptr),
track_unresolved_variables_(false) {}
+ SingletonLogger* logger() { return &log_; }
+
// Pre-parse the program from the character stream; returns true on
// success (even if parsing failed, the pre-parse data successfully
// captured the syntax error), and false if a stack-overflow happened
@@ -889,7 +891,7 @@ class PreParser : public ParserBase<PreParser> {
// the final '}'.
PreParseResult PreParseFunction(FunctionKind kind,
DeclarationScope* function_scope,
- bool parsing_module, SingletonLogger* log,
+ bool parsing_module,
bool track_unresolved_variables,
bool may_abort, int* use_counts);
@@ -1268,8 +1270,8 @@ class PreParser : public ParserBase<PreParser> {
MessageTemplate::Template message,
const char* arg = NULL,
ParseErrorType error_type = kSyntaxError) {
- log_->LogMessage(source_location.beg_pos, source_location.end_pos, message,
- arg, error_type);
+ log_.LogMessage(source_location.beg_pos, source_location.end_pos, message,
+ arg, error_type);
}
V8_INLINE void ReportMessageAt(Scanner::Location source_location,
@@ -1502,6 +1504,7 @@ class PreParser : public ParserBase<PreParser> {
int* use_counts_;
bool track_unresolved_variables_;
+ SingletonLogger log_;
};
PreParserExpression PreParser::SpreadCall(PreParserExpression function,

Powered by Google App Engine
This is Rietveld 408576698