chiark / gitweb /
pcre3 (2:8.35-7.1) unstable; urgency=medium
[pcre3.git] / doc / pcre_config.3
1 .TH PCRE_CONFIG 3 "05 November 2013" "PCRE 8.34"
2 .SH NAME
3 PCRE - Perl-compatible regular expressions
4 .SH SYNOPSIS
5 .rs
6 .sp
7 .B #include <pcre.h>
8 .PP
9 .SM
10 .B int pcre_config(int \fIwhat\fP, void *\fIwhere\fP);
11 .PP
12 .B int pcre16_config(int \fIwhat\fP, void *\fIwhere\fP);
13 .PP
14 .B int pcre32_config(int \fIwhat\fP, void *\fIwhere\fP);
15 .
16 .SH DESCRIPTION
17 .rs
18 .sp
19 This function makes it possible for a client program to find out which optional
20 features are available in the version of the PCRE library it is using. The
21 arguments are as follows:
22 .sp
23   \fIwhat\fP     A code specifying what information is required
24   \fIwhere\fP    Points to where to put the data
25 .sp
26 The \fIwhere\fP argument must point to an integer variable, except for
27 PCRE_CONFIG_MATCH_LIMIT and PCRE_CONFIG_MATCH_LIMIT_RECURSION, when it must
28 point to an unsigned long integer. The available codes are:
29 .sp
30   PCRE_CONFIG_JIT           Availability of just-in-time compiler
31                               support (1=yes 0=no)
32   PCRE_CONFIG_JITTARGET     String containing information about the
33                               target architecture for the JIT compiler,
34                               or NULL if there is no JIT support
35   PCRE_CONFIG_LINK_SIZE     Internal link size: 2, 3, or 4
36   PCRE_CONFIG_PARENS_LIMIT  Parentheses nesting limit
37   PCRE_CONFIG_MATCH_LIMIT   Internal resource limit
38   PCRE_CONFIG_MATCH_LIMIT_RECURSION
39                             Internal recursion depth limit
40   PCRE_CONFIG_NEWLINE       Value of the default newline sequence:
41                                 13 (0x000d)    for CR
42                                 10 (0x000a)    for LF
43                               3338 (0x0d0a)    for CRLF
44                                 -2             for ANYCRLF
45                                 -1             for ANY
46   PCRE_CONFIG_BSR           Indicates what \eR matches by default:
47                                  0             all Unicode line endings
48                                  1             CR, LF, or CRLF only
49   PCRE_CONFIG_POSIX_MALLOC_THRESHOLD
50                             Threshold of return slots, above which
51                               \fBmalloc()\fP is used by the POSIX API
52   PCRE_CONFIG_STACKRECURSE  Recursion implementation (1=stack 0=heap)
53   PCRE_CONFIG_UTF16         Availability of UTF-16 support (1=yes
54                                0=no); option for \fBpcre16_config()\fP
55   PCRE_CONFIG_UTF32         Availability of UTF-32 support (1=yes
56                                0=no); option for \fBpcre32_config()\fP
57   PCRE_CONFIG_UTF8          Availability of UTF-8 support (1=yes 0=no);
58                               option for \fBpcre_config()\fP
59   PCRE_CONFIG_UNICODE_PROPERTIES
60                             Availability of Unicode property support
61                               (1=yes 0=no)
62 .sp
63 The function yields 0 on success or PCRE_ERROR_BADOPTION otherwise. That error
64 is also given if PCRE_CONFIG_UTF16 or PCRE_CONFIG_UTF32 is passed to
65 \fBpcre_config()\fP, if PCRE_CONFIG_UTF8 or PCRE_CONFIG_UTF32 is passed to
66 \fBpcre16_config()\fP, or if PCRE_CONFIG_UTF8 or PCRE_CONFIG_UTF16 is passed to
67 \fBpcre32_config()\fP.
68 .P
69 There is a complete description of the PCRE native API in the
70 .\" HREF
71 \fBpcreapi\fP
72 .\"
73 page and a description of the POSIX API in the
74 .\" HREF
75 \fBpcreposix\fP
76 .\"
77 page.