Index: src/parser.h |
diff --git a/src/parser.h b/src/parser.h |
index a91f62ad50f2bfc43b1260b89e3f6218a25ecf24..c1b0361980d23bdc4c3de4bf2134210e4940abcf 100644 |
--- a/src/parser.h |
+++ b/src/parser.h |
@@ -635,16 +635,8 @@ class ParserTraits { |
class Parser : public ParserBase<ParserTraits> { |
public: |
- // Note that the hash seed in ParseInfo must be the hash seed from the |
- // Isolate's heap, otherwise the heap will be in an inconsistent state once |
- // the strings created by the Parser are internalized. |
- struct ParseInfo { |
- uintptr_t stack_limit; |
- uint32_t hash_seed; |
- UnicodeCache* unicode_cache; |
- }; |
- |
- Parser(CompilationInfo* info, ParseInfo* parse_info); |
+ Parser(CompilationInfo* info, uintptr_t stack_limit, uint32_t hash_seed, |
+ UnicodeCache* unicode_cache); |
~Parser() { |
delete reusable_preparser_; |
reusable_preparser_ = NULL; |
@@ -655,19 +647,7 @@ class Parser : public ParserBase<ParserTraits> { |
// Parses the source code represented by the compilation info and sets its |
// function literal. Returns false (and deallocates any allocated AST |
// nodes) if parsing failed. |
- static bool Parse(CompilationInfo* info, |
- bool allow_lazy = false) { |
- ParseInfo parse_info = {info->isolate()->stack_guard()->real_climit(), |
- info->isolate()->heap()->HashSeed(), |
- info->isolate()->unicode_cache()}; |
- Parser parser(info, &parse_info); |
- parser.set_allow_lazy(allow_lazy); |
- if (parser.Parse()) { |
- info->SetLanguageMode(info->function()->language_mode()); |
- return true; |
- } |
- return false; |
- } |
+ static bool Parse(CompilationInfo* info, bool allow_lazy = false); |
bool Parse(); |
void ParseOnBackground(); |