Synopsis
#include <pcre2.h>
int pcre2_config(uint32_t what, void *where);
Description
This function makes it possible for a client program to find out which optional features are available in the version of the PCRE2 library it is using. The arguments are as follows:
what-
A code specifying what information is required
where-
Points to where to put the information
If where is NULL, the function returns the amount of memory needed for
the requested information. When the information is a string, the value is in
code units; for other types of data it is in bytes.
If where is not NULL, for PCRE2_CONFIG_JITTARGET,
PCRE2_CONFIG_UNICODE_VERSION, and PCRE2_CONFIG_VERSION it must point to a
buffer that is large enough to hold the string. For all other codes it must
point to a uint32_t integer variable. The available codes are:
PCRE2_CONFIG_BSR-
Indicates what
\Rmatches by default:PCRE2_BSR_UNICODEPCRE2_BSR_ANYCRLF PCRE2_CONFIG_COMPILED_WIDTHS-
Which of
8/16/32support was compiled PCRE2_CONFIG_DEPTHLIMIT-
Default backtracking depth limit
PCRE2_CONFIG_EFFECTIVE_LINKSIZE-
How many bytes are used for link size
PCRE2_CONFIG_HEAPLIMIT-
Default heap memory limit
PCRE2_CONFIG_JIT-
Availability of just-in-time compiler support (
1=yes 0=no) PCRE2_CONFIG_JITTARGET-
Information (a string) about the target architecture for the JIT compiler
PCRE2_CONFIG_LINKSIZE-
Configured internal link size (
2,3,4) PCRE2_CONFIG_MATCHLIMIT-
Default internal resource limit
PCRE2_CONFIG_NEVER_BACKSLASH_C-
Whether or not
\Cis disabled PCRE2_CONFIG_NEWLINE-
Code for the default newline sequence:
PCRE2_NEWLINE_CRPCRE2_NEWLINE_LFPCRE2_NEWLINE_CRLFPCRE2_NEWLINE_ANYPCRE2_NEWLINE_ANYCRLFPCRE2_NEWLINE_NUL PCRE2_CONFIG_PARENSLIMIT-
Default parentheses nesting limit
PCRE2_CONFIG_RECURSIONLIMIT-
Obsolete: use
PCRE2_CONFIG_DEPTHLIMIT PCRE2_CONFIG_STACKRECURSE-
Obsolete: always returns
0 PCRE2_CONFIG_UNICODE-
Availability of Unicode support (
1=yes 0=no) PCRE2_CONFIG_UNICODE_VERSION-
The Unicode version (a string)
PCRE2_CONFIG_VERSION-
The PCRE2 version (a string)
The function yields a non-negative value on success or the negative value
PCRE2_ERROR_BADOPTION otherwise. This is also the result for the
PCRE2_CONFIG_JITTARGET code if JIT support is not available. When a string is
requested, the function returns the number of code units used, including the
terminating zero.
There is a complete description of the PCRE2 native API in the
pcre2api
page and a description of the POSIX API in the
pcre2posix
page.