diff options
Diffstat (limited to 'src/string_mutable.zig')
-rw-r--r-- | src/string_mutable.zig | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/string_mutable.zig b/src/string_mutable.zig index b8084dd50..5dc153c99 100644 --- a/src/string_mutable.zig +++ b/src/string_mutable.zig @@ -63,6 +63,8 @@ pub const MutableString = struct { if (!iterator.next(&cursor)) return "_"; + const JSLexerTables = @import("./js_lexer_tables.zig"); + // Common case: no gap necessary. No allocation necessary. needs_gap = !js_lexer.isIdentifierStart(cursor.c); if (!needs_gap) { @@ -76,6 +78,10 @@ pub const MutableString = struct { } } + if (!needs_gap and str.len >= 3 and str.len <= 10) { + return JSLexerTables.StrictModeReservedWordsRemap.get(str) orelse str; + } + if (needs_gap) { var mutable = try MutableString.initCopy(allocator, str[0..start_i]); needs_gap = false; |