123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- .TH PCRE2_SERIALIZE_ENCODE 3 "27 June 2018" "PCRE2 10.32"
- .SH NAME
- PCRE2 - Perl-compatible regular expressions (revised API)
- .SH SYNOPSIS
- .rs
- .sp
- .B #include <pcre2.h>
- .PP
- .nf
- .B int32_t pcre2_serialize_encode(const pcre2_code **\fIcodes\fP,
- .B " int32_t \fInumber_of_codes\fP, uint8_t **\fIserialized_bytes\fP,"
- .B " PCRE2_SIZE *\fIserialized_size\fP, pcre2_general_context *\fIgcontext\fP);"
- .fi
- .
- .SH DESCRIPTION
- .rs
- .sp
- This function encodes a list of compiled patterns into a byte stream that can
- be saved on disc or elsewhere. Note that this is not an abstract format like
- Java or .NET. Conversion of the byte stream back into usable compiled patterns
- can only happen on a host that is running 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 \fBpcre2_serialize_encode()\fP
- are:
- .sp
- \fIcodes\fP pointer to a vector containing the list
- \fInumber_of_codes\fP number of slots in the vector
- \fIserialized_bytes\fP set to point to the serialized byte stream
- \fIserialized_size\fP set to the number of bytes in the byte stream
- \fIgcontext\fP pointer to a general context or NULL
- .sp
- The context argument is used to obtain memory for the byte stream. When the
- serialized data is no longer needed, it must be freed by calling
- \fBpcre2_serialize_free()\fP. The yield of the function is the number of
- serialized patterns, or one of the following negative error codes:
- .sp
- PCRE2_ERROR_BADDATA \fInumber_of_codes\fP is zero or less
- PCRE2_ERROR_BADMAGIC mismatch of id bytes in one of the patterns
- PCRE2_ERROR_MEMORY memory allocation failed
- PCRE2_ERROR_MIXEDTABLES the patterns do not all use the same tables
- PCRE2_ERROR_NULL an argument other than \fIgcontext\fP is NULL
- .sp
- PCRE2_ERROR_BADMAGIC means either that a pattern's code has been corrupted, or
- that a slot in the vector does not point to a compiled pattern.
- .P
- There is a complete description of the PCRE2 native API in the
- .\" HREF
- \fBpcre2api\fP
- .\"
- page and a description of the serialization functions in the
- .\" HREF
- \fBpcre2serialize\fP
- .\"
- page.
|