LibRegex: Use the parser state capture group count in BRE

Otherwise the users won't know how many capture groups are in the
parsed regular expression.
This commit is contained in:
Ali Mohammad Pur 2021-07-10 23:07:22 +04:30 committed by Ali Mohammad Pur
parent 1c584e9d80
commit 11a8476cf4
2 changed files with 1 additions and 2 deletions

View file

@ -411,7 +411,7 @@ bool PosixBasicParser::parse_nonduplicating_re(ByteCode& bytecode, size_t& match
if (try_skip("\\(")) {
ByteCode capture_bytecode;
size_t capture_length_minimum = 0;
auto capture_group_index = ++m_capture_group;
auto capture_group_index = ++m_parser_state.capture_groups_count;
if (!parse_re_expression(capture_bytecode, capture_length_minimum))
return false;

View file

@ -155,7 +155,6 @@ private:
bool parse_nonduplicating_re(ByteCode&, size_t&);
bool parse_one_char_or_collation_element(ByteCode&, size_t&);
size_t m_capture_group { 0 };
constexpr static size_t number_of_addressable_capture_groups = 9;
size_t m_capture_group_minimum_lengths[number_of_addressable_capture_groups] { 0 };
bool m_capture_group_seen[number_of_addressable_capture_groups] { false };