Skip to content

[regexp] Split code point set builders and match start analysis out of compiler - #500

Merged
Hans-Halverson merged 1 commit into
masterfrom
refactor-regexp-compile-analyis
Aug 10, 2026
Merged

[regexp] Split code point set builders and match start analysis out of compiler#500
Hans-Halverson merged 1 commit into
masterfrom
refactor-regexp-compile-analyis

Conversation

@Hans-Halverson

Copy link
Copy Markdown
Owner

Summary

Refactor the RegExp compiler to focus on just bytecode generation:

  • Match start analysis moved alongise rest of match start code, encapsulated in a new MatchStartAnalyzer
  • Make RegExpFlagsStack its own utility struct used in both analysis and compilation traversals
  • Move the logic for converting a code point or character class to full code point set (aware of case sensitivity and unicode modes) into a new module under CodePointSetBuilder, only exposing utilities to create the full set for a code point or class.
  • Refactor some of the builder methods to pass down CodePointInversionListBuilders while possible

Tests

  • CI

@Hans-Halverson
Hans-Halverson force-pushed the refactor-regexp-compile-analyis branch 5 times, most recently from 416830b to 38842a8 Compare August 10, 2026 20:45
@Hans-Halverson
Hans-Halverson force-pushed the refactor-regexp-compile-analyis branch from 38842a8 to 95504f8 Compare August 10, 2026 20:47
@Hans-Halverson
Hans-Halverson merged commit 9357af1 into master Aug 10, 2026
11 checks passed
@Hans-Halverson
Hans-Halverson deleted the refactor-regexp-compile-analyis branch August 10, 2026 21:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant