Annotation of embedaddon/pcre/doc/pcre_assign_jit_stack.3, revision 1.1.1.4
1.1.1.4 ! misho 1: .TH PCRE_ASSIGN_JIT_STACK 3 "24 June 2012" "PCRE 8.30"
1.1 misho 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 void pcre_assign_jit_stack(pcre_extra *\fIextra\fP,
11: .ti +5n
12: .B pcre_jit_callback \fIcallback\fP, void *\fIdata\fP);
1.1.1.2 misho 13: .PP
14: .B void pcre16_assign_jit_stack(pcre16_extra *\fIextra\fP,
15: .ti +5n
16: .B pcre16_jit_callback \fIcallback\fP, void *\fIdata\fP);
1.1.1.4 ! misho 17: .PP
! 18: .B void pcre32_assign_jit_stack(pcre32_extra *\fIextra\fP,
! 19: .ti +5n
! 20: .B pcre32_jit_callback \fIcallback\fP, void *\fIdata\fP);
1.1 misho 21: .
22: .SH DESCRIPTION
23: .rs
24: .sp
1.1.1.3 misho 25: This function provides control over the memory used as a stack at run-time by a
1.1.1.4 ! misho 26: call to \fBpcre[16|32]_exec()\fP with a pattern that has been successfully
1.1.1.2 misho 27: compiled with JIT optimization. The arguments are:
1.1 misho 28: .sp
1.1.1.4 ! misho 29: extra the data pointer returned by \fBpcre[16|32]_study()\fP
1.1 misho 30: callback a callback function
31: data a JIT stack or a value to be passed to the callback
32: function
33: .P
34: If \fIcallback\fP is NULL and \fIdata\fP is NULL, an internal 32K block on
35: the machine stack is used.
36: .P
37: If \fIcallback\fP is NULL and \fIdata\fP is not NULL, \fIdata\fP must
1.1.1.4 ! misho 38: be a valid JIT stack, the result of calling \fBpcre[16|32]_jit_stack_alloc()\fP.
1.1 misho 39: .P
40: If \fIcallback\fP not NULL, it is called with \fIdata\fP as an argument at
41: the start of matching, in order to set up a JIT stack. If the result is NULL,
42: the internal 32K stack is used; otherwise the return value must be a valid JIT
1.1.1.4 ! misho 43: stack, the result of calling \fBpcre[16|32]_jit_stack_alloc()\fP.
1.1 misho 44: .P
45: You may safely assign the same JIT stack to multiple patterns, as long as they
46: are all matched in the same thread. In a multithread application, each thread
47: must use its own JIT stack. For more details, see the
48: .\" HREF
49: \fBpcrejit\fP
50: .\"
51: page.
52: .P
53: There is a complete description of the PCRE native API in the
54: .\" HREF
55: \fBpcreapi\fP
56: .\"
57: page and a description of the POSIX API in the
58: .\" HREF
59: \fBpcreposix\fP
60: .\"
61: page.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>