97 lines
2.9 KiB
HTML
97 lines
2.9 KiB
HTML
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<HTML><HEAD><TITLE>Man page of PCRE2_JIT_STACK_ASSIGN</TITLE>
|
|
</HEAD><BODY>
|
|
<H1>PCRE2_JIT_STACK_ASSIGN</H1>
|
|
Section: C Library Functions (3)<BR>Updated: 28 June 2018<BR><A HREF="#index">Index</A>
|
|
<A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR>
|
|
|
|
<A NAME="lbAB"> </A>
|
|
<H2>NAME</H2>
|
|
|
|
PCRE2 - Perl-compatible regular expressions (revised API)
|
|
<A NAME="lbAC"> </A>
|
|
<H2>SYNOPSIS</H2>
|
|
|
|
|
|
<P>
|
|
<B>#include <<A HREF="file:///usr/include/pcre2.h">pcre2.h</A>></B>
|
|
|
|
<P>
|
|
|
|
<PRE>
|
|
<B>void pcre2_jit_stack_assign(pcre2_match_context *</B><I>mcontext</I>,
|
|
<B> pcre2_jit_callback </B><I>callback_function</I>, void *<I>callback_data</I>);
|
|
</PRE>
|
|
|
|
<A NAME="lbAD"> </A>
|
|
<H2>DESCRIPTION</H2>
|
|
|
|
|
|
<P>
|
|
This function provides control over the memory used by JIT as a run-time stack
|
|
when <B>pcre2_match()</B> or <B>pcre2_jit_match()</B> is called with a pattern
|
|
that has been successfully processed by the JIT compiler. The information that
|
|
determines which stack is used is put into a match context that is subsequently
|
|
passed to a matching function. The arguments of this function are:
|
|
<P>
|
|
<BR> mcontext a pointer to a match context
|
|
<BR> callback a callback function
|
|
<BR> callback_data a JIT stack or a value to be passed to the callback
|
|
<P>
|
|
|
|
If <I>mcontext</I> is NULL, the function returns immediately, without doing
|
|
anything.
|
|
<P>
|
|
|
|
If <I>callback</I> is NULL and <I>callback_data</I> is NULL, an internal 32KiB
|
|
block on the machine stack is used.
|
|
<P>
|
|
|
|
If <I>callback</I> is NULL and <I>callback_data</I> is not NULL,
|
|
<I>callback_data</I> must be a valid JIT stack, the result of calling
|
|
<B>pcre2_jit_stack_create()</B>.
|
|
<P>
|
|
|
|
If <I>callback</I> not NULL, it is called with <I>callback_data</I> as an
|
|
argument at the start of matching, in order to set up a JIT stack. If the
|
|
result is NULL, the internal 32KiB stack is used; otherwise the return value
|
|
must be a valid JIT stack, the result of calling
|
|
<B>pcre2_jit_stack_create()</B>.
|
|
<P>
|
|
|
|
You may safely use the same JIT stack for multiple patterns, as long as they
|
|
are all matched in the same thread. In a multithread application, each thread
|
|
must use its own JIT stack. For more details, see the
|
|
|
|
<B>pcre2jit</B>
|
|
|
|
page.
|
|
<P>
|
|
|
|
There is a complete description of the PCRE2 native API in the
|
|
|
|
<B>pcre2api</B>
|
|
|
|
page and a description of the POSIX API in the
|
|
|
|
<B>pcre2posix</B>
|
|
|
|
page.
|
|
<P>
|
|
|
|
<HR>
|
|
<A NAME="index"> </A><H2>Index</H2>
|
|
<DL>
|
|
<DT id="1"><A HREF="#lbAB">NAME</A><DD>
|
|
<DT id="2"><A HREF="#lbAC">SYNOPSIS</A><DD>
|
|
<DT id="3"><A HREF="#lbAD">DESCRIPTION</A><DD>
|
|
</DL>
|
|
<HR>
|
|
This document was created by
|
|
<A HREF="/cgi-bin/man/man2html">man2html</A>,
|
|
using the manual pages.<BR>
|
|
Time: 00:05:50 GMT, March 31, 2021
|
|
</BODY>
|
|
</HTML>
|