other engines have to.
The C<flags> parameter is a bitfield which indicates which of the
-C<msixp> flags the regex was compiled with. It also contains
+C<msixpn> flags the regex was compiled with. It also contains
additional info, such as if C<use locale> is in effect.
The C<eogc> flags are stripped out before being passed to the comp
* matching*/
U32 lastparen; /* highest close paren matched ($+) */
U32 lastcloseparen; /* last close paren matched ($^N) */
- regexp_paren_pair *swap; /* Swap copy of *offs */
regexp_paren_pair *offs; /* Array of offsets for (@-) and
(@+) */
=head2 C<mother_re>
-TODO, see L<http://www.mail-archive.com/perl5-changes@perl.org/msg17328.html>
+TODO, see commit 28d8d7f41a.
=head2 C<extflags>
=head2 C<nparens>, C<lastparen>, and C<lastcloseparen>
-These fields are used to keep track of how many paren groups could be matched
-in the pattern, which was the last open paren to be entered, and which was
-the last close paren to be entered.
+These fields are used to keep track of: how many paren capture groups
+there are in the pattern; which was the highest paren to be closed (see
+L<perlvar/$+>); and which was the most recent paren to be closed (see
+L<perlvar/$^N>).
=head2 C<intflags>
C<regexp_internal> structure (see L<perlreguts/Base Structures>) but a custom
engine should use something else.
-=head2 C<swap>
-
-Unused. Left in for compatibility with Perl 5.10.0.
-
=head2 C<offs>
A C<regexp_paren_pair> structure which defines offsets into the string being
If C<< ->offs[num].start >> or C<< ->offs[num].end >> is C<-1> then that
capture group did not match.
C<< ->offs[0].start/end >> represents C<$&> (or
-C<${^MATCH}> under C<//p>) and C<< ->offs[paren].end >> matches C<$$paren> where
+C<${^MATCH}> under C</p>) and C<< ->offs[paren].end >> matches C<$$paren> where
C<$paren >= 1>.
=head2 C<precomp> C<prelen>
The number of times the structure is referenced. When
this falls to 0, the regexp is automatically freed
-by a call to pregfree. This should be set to 1 in
+by a call to C<pregfree>. This should be set to 1 in
each engine's L</comp> routine.
=head1 HISTORY