Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
PCRE2_JIT_COMPILE(3)	   Library Functions Manual	  PCRE2_JIT_COMPILE(3)

NAME
       PCRE2 - Perl-compatible regular expressions (revised API)

SYNOPSIS

       #include	<pcre2.h>

       int pcre2_jit_compile(pcre2_code	*code, uint32_t	options);

DESCRIPTION

       This function requests JIT compilation, which, if the just-in-time com-
       piler  is  available, further processes a compiled pattern into machine
       code that executes much	faster	than  the  pcre2_match()  interpretive
       matching	 function.  Full  details are given in the pcre2jit documenta-
       tion.

       The availability	of JIT support can be  tested  by  calling  pcre2_com-
       pile_jit() with a single	option PCRE2_JIT_TEST_ALLOC (the code argument
       is  ignored,  so	a NULL value is	accepted). Such	a call returns zero if
       JIT is available	and has	a  working  allocator.	Otherwise  it  returns
       PCRE2_ERROR_NOMEMORY if JIT is available	but cannot allocate executable
       memory, or PCRE2_ERROR_JIT_UNSUPPORTED if JIT support is	not compiled.

       Otherwise,  the first argument must be a	pointer	that was returned by a
       successful call to pcre2_compile(), and the second must contain one  or
       more of the following bits:

	 PCRE2_JIT_COMPLETE	 compile code for full matching
	 PCRE2_JIT_PARTIAL_SOFT	 compile code for soft partial matching
	 PCRE2_JIT_PARTIAL_HARD	 compile code for hard partial matching

       There  is  also	an obsolete option called PCRE2_JIT_INVALID_UTF, which
       has been	 superseded  by	 the  pcre2_compile()  option  PCRE2_MATCH_IN-
       VALID_UTF.  The	old option is deprecated and may be removed in the fu-
       ture.

       The yield of the	function when called with any  of  the	three  options
       above is	0 for success, or a negative error code	otherwise. In particu-
       lar,  PCRE2_ERROR_JIT_BADOPTION	is returned if JIT is not supported or
       if an unknown bit is set	in  options.  The  function  can  also	return
       PCRE2_ERROR_NOMEMORY if JIT is unable to	allocate executable memory for
       the  compiler, even if it was because of	a system security restriction.
       In a few	cases, the function  may  return  with	PCRE2_ERROR_JIT_UNSUP-
       PORTED for unsupported features.

       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.

PCRE2 10.45			22 August 2024		  PCRE2_JIT_COMPILE(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=pcre2_jit_compile&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help