Index: src/scanner.cc |
diff --git a/src/scanner.cc b/src/scanner.cc |
index 2e039ca40353ee695e28b465ebdf3e7006aee5a8..de2f8385863a4de3e656a690a4d2a9124c50509f 100644 |
--- a/src/scanner.cc |
+++ b/src/scanner.cc |
@@ -14,6 +14,7 @@ |
#include "list-inl.h" |
#include "v8.h" |
#include "parser.h" |
+#include "parser-symbol-table.h" |
namespace v8 { |
namespace internal { |
@@ -1093,26 +1094,21 @@ bool Scanner::ScanRegExpFlags() { |
} |
-Handle<String> Scanner::AllocateNextLiteralString(Isolate* isolate, |
- PretenureFlag tenured) { |
- if (is_next_literal_one_byte()) { |
- return isolate->factory()->NewStringFromOneByte( |
- next_literal_one_byte_string(), tenured).ToHandleChecked(); |
- } else { |
- return isolate->factory()->NewStringFromTwoByte( |
- next_literal_two_byte_string(), tenured).ToHandleChecked(); |
+ParserSymbolTable::Symbol* Scanner::CurrentString( |
+ ParserSymbolTable* symbol_table) { |
+ if (is_literal_one_byte()) { |
+ return symbol_table->GetOneByteSymbol(literal_one_byte_string()); |
} |
+ return symbol_table->GetTwoByteSymbol(literal_two_byte_string()); |
} |
-Handle<String> Scanner::AllocateInternalizedString(Isolate* isolate) { |
- if (is_literal_one_byte()) { |
- return isolate->factory()->InternalizeOneByteString( |
- literal_one_byte_string()); |
- } else { |
- return isolate->factory()->InternalizeTwoByteString( |
- literal_two_byte_string()); |
+ParserSymbolTable::Symbol* Scanner::NextString( |
+ ParserSymbolTable* symbol_table) { |
+ if (is_next_literal_one_byte()) { |
+ return symbol_table->GetOneByteSymbol(next_literal_one_byte_string()); |
} |
+ return symbol_table->GetTwoByteSymbol(next_literal_two_byte_string()); |
} |