RegexGenerator.Emitter.cs (96)
779using (EmitBlock(writer, "if (TryFindNextPossibleStartingPosition(inputSpan))"))
797using (EmitBlock(writer, "if (TryFindNextPossibleStartingPosition(inputSpan) && !TryMatchAtCurrentPosition(inputSpan))"))
823using (EmitBlock(writer, null))
870clause = EmitBlock(writer, (minRequiredLength, rtl) switch
964using (EmitBlock(writer, $"if (pos == 0 && inputSpan.Length == {minRequiredLength})"))
972using (EmitBlock(writer, "if (pos == 0)"))
988using (EmitBlock(writer, "if (pos == base.runtextstart)"))
999using (EmitBlock(writer, "if (pos < inputSpan.Length - 1)"))
1011using (EmitBlock(writer, "if (pos < inputSpan.Length)"))
1023using (EmitBlock(writer, "if (pos != 0)"))
1036using (EmitBlock(writer, "if (pos >= inputSpan.Length - 1 && ((uint)pos >= (uint)inputSpan.Length || inputSpan[pos] == '\\n'))"))
1046using (EmitBlock(writer, "if (pos >= inputSpan.Length)"))
1057using (EmitBlock(writer, $"if (pos < inputSpan.Length - {regexTree.FindOptimizations.MinRequiredLength + 1})"))
1068using (EmitBlock(writer, $"if (pos < inputSpan.Length - {regexTree.FindOptimizations.MinRequiredLength})"))
1087using (EmitBlock(writer, "if (pos > 0 && inputSpan[pos - 1] != '\\n')"))
1090using (EmitBlock(writer, "if ((uint)newlinePos > inputSpan.Length - pos - 1)"))
1099using (EmitBlock(writer, minRequiredLength switch
1118using (EmitBlock(writer, $"if (pos < inputSpan.Length - {maxLength})"))
1127using (EmitBlock(writer, $"if (pos < inputSpan.Length - {maxLength + 1})"))
1193using (EmitBlock(writer, "if (i >= 0)"))
1250using (EmitBlock(writer, "if (i >= 0)"))
1265using (EmitBlock(writer, "if (pos >= 0)"))
1304loopBlock = EmitBlock(writer, $"for (int i = 0; i < {upperBound}; i++)");
1376using (EmitBlock(writer, "if (indexOfPos < 0)"))
1399using (EmitBlock(writer, $"if ((uint)(i + {maxDistance}) >= (uint)span.Length)"))
1411using (EmitBlock(writer, "if (i >= 0)"))
1450using (hasCharClassConditions ? EmitBlock(writer, null) : default)
1476using (EmitBlock(writer, "if (pos >= 0)"))
1484using (EmitBlock(writer, "while ((uint)--pos < (uint)inputSpan.Length)"))
1486using (EmitBlock(writer, $"if ({MatchCharacterClass("inputSpan[pos]", set.Set, negate: false, additionalDeclarations, requiredHelpers)})"))
1520block = EmitBlock(writer, "while (true)");
1542using (EmitBlock(writer, $"if (i < 0)"))
1550indexOfFoundBlock = EmitBlock(writer, $"if (i >= 0)");
1555using (EmitBlock(writer, $"while ((uint)prev < (uint)slice.Length && {MatchCharacterClass("slice[prev]", target.LoopNode.Str!, negate: false, additionalDeclarations, requiredHelpers)})"))
1565using (EmitBlock(writer, $"if ((i - prev - 1) < {target.LoopNode.M})"))
1773using (EmitBlock(writer, $"if ({SpanLengthCheck(requiredLength, dynamicRequiredLength)})"))
1867using (EmitBlock(writer, $"switch ({sliceSpan}[{sliceStaticPos}])"))
2066using (EmitBlock(writer, $"// Branch {i}", faux: !isAtomic))
2183using (EmitBlock(writer, $"switch ({switchClause})"))
2217using (EmitBlock(writer, $"if (base.IsMatched({capnum}))"))
2225using (EmitBlock(writer, $"if (!base.IsMatched({capnum}))"))
2245using (EmitBlock(writer, $" !inputSpan.Slice(base.MatchIndex({capnum}), matchLength).SequenceEqual({sliceSpan}.Slice(0, matchLength)))"))
2256using (EmitBlock(writer, $" !inputSpan.Slice(base.MatchIndex({capnum}), matchLength).SequenceEqual(inputSpan.Slice(pos - matchLength, matchLength)))"))
2292using (EmitBlock(writer, $"if (base.IsMatched({capnum}))"))
2302using (EmitBlock(writer, $"else"))
2338using (EmitBlock(writer, $"if (!base.IsMatched({capnum}))"))
2410using (EmitBlock(writer, $"switch ({resumeAt})"))
2598using (EmitBlock(writer, $"switch ({resumeAt})"))
2659using (EmitBlock(writer, $"if (!base.IsMatched({uncapnum}))"))
2951using (EmitBlock(writer, null, faux: rm.Analysis.MayBacktrack(node)))
3060using (EmitBlock(writer, "if (base.runtextpos < pos)"))
3143using (EmitBlock(writer, null))
3224using (EmitBlock(writer, clause))
3274using (EmitBlock(writer, $"if ({call}(inputSpan, pos{(sliceStaticPos > 0 ? $" + {sliceStaticPos}" : "")}))"))
3299using (EmitBlock(writer, node.Kind == RegexNodeKind.Beginning ?
3309using (EmitBlock(writer, sliceStaticPos > 0 ?
3318using (EmitBlock(writer, sliceStaticPos > 0 ?
3327using (EmitBlock(writer, sliceStaticPos > 0 ?
3336using (EmitBlock(writer, sliceStaticPos > 0 ?
3362using (EmitBlock(writer, $"if ((uint)(pos - {str.Length}) >= inputSpan.Length)"))
3368using (EmitBlock(writer, $"for (int i = 0; i < {str.Length}; i++)"))
3370using (EmitBlock(writer, $"if (inputSpan[--pos] != {Literal(str)}[{str.Length - 1} - i])"))
3387using (EmitBlock(writer, $"if ({clause})"))
3491using (EmitBlock(writer, $"{setEndingPosCondition}.{indexOfExpr}) < 0)"))
3500using (EmitBlock(writer, $"if ({startingPos} {(!rtl ? ">=" : "<=")} {endingPos})"))
3614using (EmitBlock(writer, $"if ({iterationCount} >= {maxIterations})"))
3693using (EmitBlock(writer, overlap ?
3713using (EmitBlock(writer, $"if ({startingPos} < 0)"))
3894using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
3905using (EmitBlock(writer, $"if (pos == {startingPos})"))
3953using (EmitBlock(writer, $"if ({iterationCount} > 0)"))
4028clause = EmitBlock(writer, $"if ({sawEmpty} != 0)");
4035clause = EmitBlock(writer, $"if ({CountIsGreaterThanOrEqualTo(iterationCount, maxIterations)} || {sawEmpty} != 0)");
4042clause = EmitBlock(writer, $"if ({CountIsGreaterThanOrEqualTo(iterationCount, maxIterations)})");
4109using (EmitBlock(writer, $"for (int i = 0; i < {iterations}; i++)"))
4146using (EmitBlock(writer, null))
4167using (EmitBlock(writer, $"if ({condition})"))
4184using (EmitBlock(writer, $"for (int i = 0; i < {repeaterSpan}.Length; i++)"))
4245using (EmitBlock(writer, $"while ({maxClause}pos > {iterationLocal} && {expr})"))
4272using (EmitBlock(writer, $"if ({iterationLocal} < 0)"))
4301using (EmitBlock(writer, $"while ({maxClause}(uint){iterationLocal} < (uint){sliceSpan}.Length && {expr})"))
4311using (EmitBlock(writer, $"if ({CountIsLessThan(iterationLocal, minIterations)})"))
4357using (EmitBlock(writer, $"if ({spaceAvailable} && {expr})"))
4384using (EmitBlock(writer, $"for (int {i} = 0; {i} < {node.M}; {i}++)"))
4535clause = EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, maxIterations)})");
4543clause = EmitBlock(writer, $"if (pos != {startingPos} || {CountIsLessThan(iterationCount, minIterations)})");
4551clause = EmitBlock(writer, $"if ((pos != {startingPos} || {CountIsLessThan(iterationCount, minIterations)}) && {CountIsLessThan(iterationCount, maxIterations)})");
4557clause = EmitBlock(writer, $"if (pos != {startingPos})");
4564clause = EmitBlock(writer, $"if (pos != {startingPos} && {CountIsLessThan(iterationCount, maxIterations)})");
4582using (EmitBlock(writer, $"if (--{iterationCount} < 0)"))
4607using (EmitBlock(writer, $"if ({iterationCount} == 0)"))
4620using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
4633using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
4645using (EmitBlock(writer, $"if ({iterationCount} != 0)"))
4684using (EmitBlock(writer, $"if ({iterationCount} == 0)"))
4988using (rm.MatchTimeout is null ? EmitBlock(writer, $"if ({HelpersTypeName}.{HasDefaultTimeoutFieldName})") : default)