]> granicus.if.org Git - re2c/commit
libre2c_posix: extended regex_t structure to hold more submatch data.
authorUlya Trofimovich <skvadrik@gmail.com>
Sun, 27 Jan 2019 10:23:23 +0000 (10:23 +0000)
committerUlya Trofimovich <skvadrik@gmail.com>
Sun, 27 Jan 2019 10:23:23 +0000 (10:23 +0000)
commit27c0562cbbe5355d3f5136ea79d6922df3d47b27
tree253f7829d1a7a13f7c91c4ed3101f38231081d20
parentb98e70f6a845d3a0e5520ea6e59600b2f70714d4
libre2c_posix: extended regex_t structure to hold more submatch data.

Added fields:
    - re_nsub: total number of submatch groups, required by POSIX standard

    - pmatch: buffer for submatch results, usually supplied by the user to
      regexec(), but we allow to do the allocation and storage in regex_t.
      This is convenient for users that have hard time managing memory, e.g.
      java bindings to libre2c_posix.

    - regs: buffer for internal use by regexec(), strored in regex_t to
      avoid repeated memory allocation on each call to regexec() with the
      same regex.
re2c/libre2c_posix/regcomp.cc
re2c/libre2c_posix/regex-impl.h
re2c/libre2c_posix/regexec.cc
re2c/libre2c_posix/regfree.cc
re2c/libre2c_posix/test.cpp