28 lines
1.2 KiB
Markdown
28 lines
1.2 KiB
Markdown
# PCRE2 engine bridge
|
|
|
|
This directory contains the GPL-3.0-or-later application bridge and
|
|
deterministic build description for the bundled PCRE2 flavour. It deliberately
|
|
does not vendor the upstream PCRE2 source tree or generated binaries.
|
|
|
|
ABI version 3 exposes:
|
|
|
|
- exact engine identity and configuration;
|
|
- compile diagnostics with UTF-8 byte offsets;
|
|
- bounded non-overlapping matching with copied group-zero/capture records and
|
|
copied capture-name metadata;
|
|
- bounded native `pcre2_substitute()` semantics over the same retained match
|
|
sequence;
|
|
- bounded automatic-callout tracing from one native `pcre2_match()` invocation,
|
|
with copied event and mark data and an immediate native stop at either trace
|
|
cap;
|
|
- match-step, depth, heap, match-count, capture-row and output limits;
|
|
- no native pointer or compiled-code handle across a call boundary.
|
|
|
|
All PCRE2 allocations are released before an ABI call returns. JavaScript owns
|
|
and frees every input/result buffer in `finally`, and the containing worker is
|
|
terminated on timeout, crash, cancellation or supersession.
|
|
|
|
The explicit offline source/toolchain identity, build, verification and local
|
|
asset-install workflow is documented in
|
|
[`docs/ENGINE_BUILDS.md`](../../docs/ENGINE_BUILDS.md).
|