ngra string regex use ir as jit engine as well

This commit is contained in:
Youmu Liu
2026-06-15 18:08:14 +08:00
parent 2741b34583
commit 861b50575a
23 changed files with 352 additions and 795 deletions
@@ -62,7 +62,7 @@ namespace StgSharp.RegularAnalysis.TextRegex
string regex
)
{
RegexInterpreter interpreter = new RegexInterpreter();
RegexInterpreter interpreter = new();
interpreter._source = regex;
bool isSuccess;
try
@@ -81,11 +81,12 @@ namespace StgSharp.RegularAnalysis.TextRegex
private void Analyze()
{
RegexTokenReader reader = new RegexTokenReader(_source);
RegexTokenReader reader = new(_source);
TokenParser<RegexElementLabel, RegexElementLabel> lexer = reader.Pipe(() => new RegexTokenParser());
while (lexer.TryReadToken(out Token<RegexElementLabel> token))
{
// Console.WriteLine(token.Value);
if ((token.Flag & RegexElementLabel.SEQUENCE) != 0)
{
// char or charset