feat: add Python and Java regex engines
This commit is contained in:
25
engines/java/README.md
Normal file
25
engines/java/README.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# TeaVM Java regular-expression engine
|
||||
|
||||
This project compiles a bounded bridge around TeaVM 0.15.0's
|
||||
`java.util.regex.Pattern` and `Matcher` class-library implementation to a
|
||||
minified ES2015 module.
|
||||
|
||||
The runtime is intentionally identified as `TeaVM java.util.regex 0.15.0`.
|
||||
TeaVM supplies its own Apache Harmony-derived Java class-library subset; the
|
||||
generated engine is not OpenJDK and must not be presented as exact OpenJDK
|
||||
semantics.
|
||||
|
||||
The `U` application flag is a compatibility request. TeaVM 0.15.0 does not
|
||||
implement OpenJDK's `Pattern.UNICODE_CHARACTER_CLASS`; the bridge implies
|
||||
Unicode case folding but retains TeaVM's predefined-character-class and word
|
||||
boundary behaviour. The TypeScript adapter reports this boundary.
|
||||
|
||||
Replacement is delegated to TeaVM 0.15.0's native `Matcher` implementation.
|
||||
That implementation recognizes only a single decimal digit after `$` (`$0`
|
||||
through `$9`, subject to the compiled group count). It does not implement
|
||||
OpenJDK's `${name}` named-replacement syntax; the bridge returns a
|
||||
`replacement-error` when such a replacement is attempted.
|
||||
|
||||
Maven builds `target/generated/java-regex.mjs`. The repository pack script
|
||||
verifies the pinned source identity, bridge source hashes, licence/notice and
|
||||
generated module before it can be installed under `public/engines/java`.
|
||||
Reference in New Issue
Block a user