feat(regex): expand native Joni Unicode properties - #1074
Draft
fglock wants to merge 9 commits into
Draft
Conversation
Carry per-property case-fold policy through the forked Joni resolver and parse standalone pinned Block, Script, and Script_Extensions assignments natively. Keep no-fold properties inside composed classes in the adapter until Joni can preserve member policy through class algebra. Generated with [OpenAI Codex](https://openai.com/codex) Co-Authored-By: OpenAI Codex <codex@openai.com>
Route standalone exact combining-class, bidi, decomposition, width, numeric, and joining-group assignments through Joni's no-fold range resolver while retaining wildcard and composed-class semantics in the adapter. Generated with [OpenAI Codex](https://openai.com/codex) Co-Authored-By: OpenAI Codex <codex@openai.com>
Pass exact Age, In, and Present_In assignments to the pinned Joni character property resolver with explicit no-fold policy. Keep wildcard and composed class forms in the frontend until their syntax semantics are represented by the engine. Generated with Codex (https://openai.com/codex) Co-Authored-By: Codex <codex@openai.com>
Carry resolver-provided case-fold eligibility through character-class union, intersection, negation, and nesting without changing Joni's existing ASCII boundary policy. Gate singleton and multi-character fold expansion with the composed eligibility class. Generated with [Codex](https://openai.com/codex) Co-Authored-By: Codex <codex@openai.com>
Accept Perl's anchored colon wildcard form for Block values and match official short and long value aliases while retaining the pinned Perl Block sets. Generated with [Codex](https://openai.com/codex) Co-Authored-By: Codex <codex@openai.com>
Canonicalize Perl's pinned XPosix and ASCII Posix aliases using loose property-name matching while preserving user-property precedence. Propagate explicit missing-property diagnostics through both backend adapters instead of converting them into deferred match-any placeholders. Add a system-Perl-validated focused fixture covering canonical and loose spellings, membership, rejection, and defined callback precedence. Generated with [Codex](https://openai.com/codex) Co-Authored-By: Codex <codex@openai.com>
Allow Perl's bare In and Is Block shortcuts to ignore leading whitespace, hyphens, and underscores before the prefix. Keep Script, binary, General_Category, and exact user-property precedence unchanged while resolving only against the pinned Perl Block table. Add a system-Perl-validated focused fixture for membership, precedence, callback behavior, and rejection paths. Generated with [Codex](https://openai.com/codex) Co-Authored-By: Codex <codex@openai.com>
Normalize leading loose separators and the Is prefix before resolving bare Script shortcuts, while preserving binary, general-category, and user-defined property precedence. Generated with [Codex](https://openai.com/codex) Co-Authored-By: Codex <codex@openai.com>
Route leading-loose bare Is aliases through the native Joni property callback, preserving Script, Block, General_Category, and user-property precedence while inheriting only already-supported binary and special property bases. Generated with [Codex](https://openai.com/codex) Co-Authored-By: Codex <codex@openai.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Validation
makeNotes
This is a stacked Phase 36 PR based on
fix/phase36-branch-reset-named-call. Original Joni and JCodings copyright and authorship notices are preserved.