RegexGenerator.Emitter.cs (98)
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
1119using (EmitBlock(writer, $"if (pos < inputSpan.Length - {maxLength})"))
1128using (EmitBlock(writer, $"if (pos < inputSpan.Length - {maxLength + 1})"))
1194using (EmitBlock(writer, "if (i >= 0)"))
1251using (EmitBlock(writer, "if (i >= 0)"))
1266using (EmitBlock(writer, "if (pos >= 0)"))
1305loopBlock = EmitBlock(writer, $"for (int i = 0; i < {upperBound}; i++)");
1377using (EmitBlock(writer, "if (indexOfPos < 0)"))
1400using (EmitBlock(writer, $"if ((uint)(i + {maxDistance}) >= (uint)span.Length)"))
1412using (EmitBlock(writer, "if (i >= 0)"))
1451using (hasCharClassConditions ? EmitBlock(writer, null) : default)
1477using (EmitBlock(writer, "if (pos >= 0)"))
1485using (EmitBlock(writer, "while ((uint)--pos < (uint)inputSpan.Length)"))
1487using (EmitBlock(writer, $"if ({MatchCharacterClass("inputSpan[pos]", set.Set, negate: false, additionalDeclarations, requiredHelpers)})"))
1521block = EmitBlock(writer, "while (true)");
1543using (EmitBlock(writer, $"if (i < 0)"))
1551indexOfFoundBlock = EmitBlock(writer, $"if (i >= 0)");
1556using (EmitBlock(writer, $"while ((uint)prev < (uint)slice.Length && {MatchCharacterClass("slice[prev]", target.LoopNode.Str!, negate: false, additionalDeclarations, requiredHelpers)})"))
1566using (EmitBlock(writer, $"if ((i - prev - 1) < {target.LoopNode.M})"))
1774using (EmitBlock(writer, $"if ({SpanLengthCheck(requiredLength, dynamicRequiredLength)})"))
1868using (EmitBlock(writer, $"switch ({sliceSpan}[{sliceStaticPos}])"))
2067using (EmitBlock(writer, $"// Branch {i}", faux: !isAtomic))
2184using (EmitBlock(writer, $"switch ({switchClause})"))
2218using (EmitBlock(writer, $"if (base.IsMatched({capnum}))"))
2226using (EmitBlock(writer, $"if (!base.IsMatched({capnum}))"))
2246using (EmitBlock(writer, $" !inputSpan.Slice(base.MatchIndex({capnum}), matchLength).SequenceEqual({sliceSpan}.Slice(0, matchLength)))"))
2257using (EmitBlock(writer, $" !inputSpan.Slice(base.MatchIndex({capnum}), matchLength).SequenceEqual(inputSpan.Slice(pos - matchLength, matchLength)))"))
2293using (EmitBlock(writer, $"if (base.IsMatched({capnum}))"))
2303using (EmitBlock(writer, $"else"))
2339using (EmitBlock(writer, $"if (!base.IsMatched({capnum}))"))
2411using (EmitBlock(writer, $"switch ({resumeAt})"))
2599using (EmitBlock(writer, $"switch ({resumeAt})"))
2660using (EmitBlock(writer, $"if (!base.IsMatched({uncapnum}))"))
2952using (EmitBlock(writer, null, faux: rm.Analysis.MayBacktrack(node)))
3061using (EmitBlock(writer, "if (base.runtextpos < pos)"))
3144using (EmitBlock(writer, null))
3225using (EmitBlock(writer, clause))
3275using (EmitBlock(writer, $"if ({call}(inputSpan, pos{(sliceStaticPos > 0 ? $" + {sliceStaticPos}" : "")}))"))
3300using (EmitBlock(writer, node.Kind == RegexNodeKind.Beginning ?
3310using (EmitBlock(writer, sliceStaticPos > 0 ?
3319using (EmitBlock(writer, sliceStaticPos > 0 ?
3328using (EmitBlock(writer, sliceStaticPos > 0 ?
3337using (EmitBlock(writer, sliceStaticPos > 0 ?
3363using (EmitBlock(writer, $"if ((uint)(pos - {str.Length}) >= inputSpan.Length)"))
3369using (EmitBlock(writer, $"for (int i = 0; i < {str.Length}; i++)"))
3371using (EmitBlock(writer, $"if (inputSpan[--pos] != {Literal(str)}[{str.Length - 1} - i])"))
3388using (EmitBlock(writer, $"if ({clause})"))
3489using (EmitBlock(writer, $"if ({startingPos} >= {endingPos})"))
3507using (EmitBlock(writer, $"if ({condition})"))
3531using (EmitBlock(writer, $"{setEndingPosCondition}.{indexOfExpr}) < 0)"))
3541using (EmitBlock(writer, $"if ({startingPos} {(!rtl ? ">=" : "<=")} {endingPos})"))
3655using (EmitBlock(writer, $"if ({iterationCount} >= {maxIterations})"))
3734using (EmitBlock(writer, overlap ?
3754using (EmitBlock(writer, $"if ({startingPos} < 0)"))
3935using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
3946using (EmitBlock(writer, $"if (pos == {startingPos})"))
3994using (EmitBlock(writer, $"if ({iterationCount} > 0)"))
4069clause = EmitBlock(writer, $"if ({sawEmpty} != 0)");
4076clause = EmitBlock(writer, $"if ({CountIsGreaterThanOrEqualTo(iterationCount, maxIterations)} || {sawEmpty} != 0)");
4083clause = EmitBlock(writer, $"if ({CountIsGreaterThanOrEqualTo(iterationCount, maxIterations)})");
4150using (EmitBlock(writer, $"for (int i = 0; i < {iterations}; i++)"))
4187using (EmitBlock(writer, null))
4208using (EmitBlock(writer, $"if ({condition})"))
4225using (EmitBlock(writer, $"for (int i = 0; i < {repeaterSpan}.Length; i++)"))
4286using (EmitBlock(writer, $"while ({maxClause}pos > {iterationLocal} && {expr})"))
4313using (EmitBlock(writer, $"if ({iterationLocal} < 0)"))
4342using (EmitBlock(writer, $"while ({maxClause}(uint){iterationLocal} < (uint){sliceSpan}.Length && {expr})"))
4352using (EmitBlock(writer, $"if ({CountIsLessThan(iterationLocal, minIterations)})"))
4398using (EmitBlock(writer, $"if ({spaceAvailable} && {expr})"))
4425using (EmitBlock(writer, $"for (int {i} = 0; {i} < {node.M}; {i}++)"))
4576clause = EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, maxIterations)})");
4584clause = EmitBlock(writer, $"if (pos != {startingPos} || {CountIsLessThan(iterationCount, minIterations)})");
4592clause = EmitBlock(writer, $"if ((pos != {startingPos} || {CountIsLessThan(iterationCount, minIterations)}) && {CountIsLessThan(iterationCount, maxIterations)})");
4598clause = EmitBlock(writer, $"if (pos != {startingPos})");
4605clause = EmitBlock(writer, $"if (pos != {startingPos} && {CountIsLessThan(iterationCount, maxIterations)})");
4623using (EmitBlock(writer, $"if (--{iterationCount} < 0)"))
4648using (EmitBlock(writer, $"if ({iterationCount} == 0)"))
4661using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
4674using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
4686using (EmitBlock(writer, $"if ({iterationCount} != 0)"))
4725using (EmitBlock(writer, $"if ({iterationCount} == 0)"))
5029using (rm.MatchTimeout is null ? EmitBlock(writer, $"if ({HelpersTypeName}.{HasDefaultTimeoutFieldName})") : default)