• Jakob Gruber's avatar
    [regexp] Reorganize and deduplicate in the regexp parser · 7d849870
    Jakob Gruber authored
    The parser is organized in a somewhat tricky way s.t. it can be
    hard to map the implementation back to the specified grammar.
    
    In particular, the logic for CharacterClassEscape, ClassEscape,
    and CharacterEscape was implemented twice - once inside a character
    class, once outside.
    
    This CL refactors related logic to have only a single implementation.
    
    As a drive-by, fix one related inconsistency related to \k inside
    a character class.
    
    Fixed: v8:10602
    Change-Id: I5858840159694fa6f8d1aa857027db80754e3dfd
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3178966Reviewed-by: 's avatarMathias Bynens <mathias@chromium.org>
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77114}
    7d849870
regexp-parser.cc 74.2 KB