52 lines
1.8 KiB
Groff
52 lines
1.8 KiB
Groff
.TH PCRE2_COMPILE 3 "23 March 2017" "PCRE2 10.30"
|
|
.SH NAME
|
|
PCRE2 - Perl-compatible regular expressions (revised API)
|
|
.SH SYNOPSIS
|
|
.rs
|
|
.sp
|
|
.B #include <pcre2.h>
|
|
.PP
|
|
.nf
|
|
.B int pcre2_callout_enumerate(const pcre2_code *\fIcode\fP,
|
|
.B " int (*\fIcallback\fP)(pcre2_callout_enumerate_block *, void *),"
|
|
.B " void *\fIcallout_data\fP);"
|
|
.fi
|
|
.
|
|
.SH DESCRIPTION
|
|
.rs
|
|
.sp
|
|
This function scans a compiled regular expression and calls the \fIcallback()\fP
|
|
function for each callout within the pattern. The yield of the function is zero
|
|
for success and non-zero otherwise. The arguments are:
|
|
.sp
|
|
\fIcode\fP Points to the compiled pattern
|
|
\fIcallback\fP The callback function
|
|
\fIcallout_data\fP User data that is passed to the callback
|
|
.sp
|
|
The \fIcallback()\fP function is passed a pointer to a data block containing
|
|
the following fields (not necessarily in this order):
|
|
.sp
|
|
uint32_t \fIversion\fP Block version number
|
|
uint32_t \fIcallout_number\fP Number for numbered callouts
|
|
PCRE2_SIZE \fIpattern_position\fP Offset to next item in pattern
|
|
PCRE2_SIZE \fInext_item_length\fP Length of next item in pattern
|
|
PCRE2_SIZE \fIcallout_string_offset\fP Offset to string within pattern
|
|
PCRE2_SIZE \fIcallout_string_length\fP Length of callout string
|
|
PCRE2_SPTR \fIcallout_string\fP Points to callout string or is NULL
|
|
.sp
|
|
The second argument passed to the \fBcallback()\fP function is the callout data
|
|
that was passed to \fBpcre2_callout_enumerate()\fP. The \fBcallback()\fP
|
|
function must return zero for success. Any other value causes the pattern scan
|
|
to stop, with the value being passed back as the result of
|
|
\fBpcre2_callout_enumerate()\fP.
|
|
.P
|
|
There is a complete description of the PCRE2 native API in the
|
|
.\" HREF
|
|
\fBpcre2api\fP
|
|
.\"
|
|
page and a description of the POSIX API in the
|
|
.\" HREF
|
|
\fBpcre2posix\fP
|
|
.\"
|
|
page.
|