NAME
PAX::GuardManager - guard registration and invalidation helper
SYNOPSIS
use PAX::GuardManager;
my $obj = PAX::GuardManager->new(...);
my $result = $obj->validate_region(...);
DESCRIPTION
Keeps the runtime-side bookkeeping for speculative guards so compiled regions can be invalidated when assumptions stop holding.
METHODS
new, validate_region, validate_or_deopt, invalidate_epoch, telemetry
These are the public entrypoints exposed by this module's current interface.
PURPOSE
This module exists to keep the guard registration and invalidation helper logic in one place so the CLI, build pipeline, and runtime can reuse the same behavior instead of duplicating it.
WHY IT EXISTS
PAX uses this module when it needs guard registration and invalidation helper. Keeping that behavior isolated here makes the surrounding compiler and packaging stages easier to reason about and safer to evolve.
WHEN TO USE
Edit this file when a change affects guard registration and invalidation helper, the data contract this module returns, or the conditions under which callers choose this path.
HOW TO USE
Load the module through the normal PAX call path, pass explicit arguments rather than ambient global state, and keep project-specific behavior out of this file so the implementation stays neutral across arbitrary Perl applications.
WHAT USES IT
This module is used by the PAX CLI, the build pipeline, standalone packaging, and the test suite paths that cover guard registration and invalidation helper.
EXAMPLES
Example 1:
perl -Ilib -MPAX::GuardManager -e 1
Confirm that the module loads from a source checkout.
Example 2:
prove -lr t
Run the repository test suite after changing the behavior this module owns.