mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-07-29 12:19:54 +00:00
LibRegex: Flatten capture group list in MatchState
This makes copying the capture group COWVector significantly cheaper, as we no longer have to run any constructors for it - just memcpy.
This commit is contained in:
parent
bbef0e8375
commit
76f5dce3db
Notes:
github-actions[bot]
2025-04-18 15:10:37 +00:00
Author: https://github.com/alimpfard
Commit: 76f5dce3db
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/4375
14 changed files with 98 additions and 87 deletions
|
@ -31,13 +31,13 @@ struct Block {
|
|||
}
|
||||
|
||||
static constexpr size_t const c_max_recursion = 5000;
|
||||
static constexpr size_t const c_match_preallocation_count = 0;
|
||||
|
||||
struct RegexResult final {
|
||||
bool success { false };
|
||||
size_t count { 0 };
|
||||
Vector<Match> matches;
|
||||
Vector<Vector<Match>> capture_group_matches;
|
||||
Vector<Match> flat_capture_group_matches;
|
||||
Vector<Span<Match>> capture_group_matches;
|
||||
size_t n_operations { 0 };
|
||||
size_t n_capture_groups { 0 };
|
||||
size_t n_named_capture_groups { 0 };
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue