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

  
 
  

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

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

SYNOPSIS

     #include <pcre2.h>

     int32_t pcre2_serialize_decode(pcre2_code **codes,
       int32_t number_of_codes, const uint8_t *bytes,
       pcre2_general_context *gcontext);

DESCRIPTION

     This  function  decodes  a  serialized set of compiled patterns back into a
     list of individual patterns. This is possible only on a host that	is  run-
     ning the same version of PCRE2, with the same code unit width, and the host
     must  also have the same endianness, pointer width and PCRE2_SIZE type. The
     arguments for pcre2_serialize_decode() are:

       codes		pointer to a vector in which to build the list
       number_of_codes	number of slots in the vector
       bytes		the serialized byte stream
       gcontext 	pointer to a general context or NULL

     The bytes argument must point to a block of data that was	originally  cre-
     ated  by pcre2_serialize_encode(), though it may have been saved on disc or
     elsewhere in the meantime. If there are more codes in the	serialized  data
     than  slots in the list, only those compiled patterns that will fit are de-
     coded. The yield of the function is the number of decoded patterns, or  one
     of the following negative error codes:

       PCRE2_ERROR_BADDATA   number_of_codes is zero or less
       PCRE2_ERROR_BADMAGIC  mismatch of id bytes in bytes
       PCRE2_ERROR_BADMODE   mismatch of variable unit size or PCRE version
       PCRE2_ERROR_NOMEMORY  memory allocation failed
       PCRE2_ERROR_NULL      codes or bytes is NULL

     PCRE2_ERROR_BADMAGIC may mean that the data is corrupt, or that it was com-
     piled on a system with different endianness.

     There  is	a  complete  description of the PCRE2 native API in the pcre2api
     page and a description of the serialization functions in the pcre2serialize
     page.

PCRE2 10.47			  22 April 2022        PCRE2_SERIALIZE_DECODE(3)

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

home | help