RegexGenerator.Emitter.cs (95)
655using (EmitBlock(writer, "if (TryFindNextPossibleStartingPosition(inputSpan))"))
673using (EmitBlock(writer, "if (TryFindNextPossibleStartingPosition(inputSpan) && !TryMatchAtCurrentPosition(inputSpan))"))
699using (EmitBlock(writer, null))
746clause = EmitBlock(writer, (minRequiredLength, rtl) switch
834using (EmitBlock(writer, "if (pos == 0)"))
850using (EmitBlock(writer, "if (pos == base.runtextstart)"))
861using (EmitBlock(writer, "if (pos < inputSpan.Length - 1)"))
873using (EmitBlock(writer, "if (pos < inputSpan.Length)"))
885using (EmitBlock(writer, "if (pos != 0)"))
898using (EmitBlock(writer, "if (pos >= inputSpan.Length - 1 && ((uint)pos >= (uint)inputSpan.Length || inputSpan[pos] == '\\n'))"))
908using (EmitBlock(writer, "if (pos >= inputSpan.Length)"))
919using (EmitBlock(writer, $"if (pos < inputSpan.Length - {regexTree.FindOptimizations.MinRequiredLength + 1})"))
930using (EmitBlock(writer, $"if (pos < inputSpan.Length - {regexTree.FindOptimizations.MinRequiredLength})"))
949using (EmitBlock(writer, "if (pos > 0 && inputSpan[pos - 1] != '\\n')"))
952using (EmitBlock(writer, "if ((uint)newlinePos > inputSpan.Length - pos - 1)"))
961using (EmitBlock(writer, minRequiredLength switch
980using (EmitBlock(writer, $"if (pos < inputSpan.Length - {maxLength})"))
989using (EmitBlock(writer, $"if (pos < inputSpan.Length - {maxLength + 1})"))
1055using (EmitBlock(writer, "if (i >= 0)"))
1112using (EmitBlock(writer, "if (i >= 0)"))
1127using (EmitBlock(writer, "if (pos >= 0)"))
1166loopBlock = EmitBlock(writer, $"for (int i = 0; i < {upperBound}; i++)");
1238using (EmitBlock(writer, "if (indexOfPos < 0)"))
1261using (EmitBlock(writer, $"if ((uint)(i + {maxDistance}) >= (uint)span.Length)"))
1273using (EmitBlock(writer, "if (i >= 0)"))
1312using (hasCharClassConditions ? EmitBlock(writer, null) : default)
1338using (EmitBlock(writer, "if (pos >= 0)"))
1346using (EmitBlock(writer, "while ((uint)--pos < (uint)inputSpan.Length)"))
1348using (EmitBlock(writer, $"if ({MatchCharacterClass("inputSpan[pos]", set.Set, negate: false, additionalDeclarations, requiredHelpers)})"))
1382block = EmitBlock(writer, "while (true)");
1404using (EmitBlock(writer, $"if (i < 0)"))
1412indexOfFoundBlock = EmitBlock(writer, $"if (i >= 0)");
1417using (EmitBlock(writer, $"while ((uint)prev < (uint)slice.Length && {MatchCharacterClass("slice[prev]", target.LoopNode.Str!, negate: false, additionalDeclarations, requiredHelpers)})"))
1427using (EmitBlock(writer, $"if ((i - prev - 1) < {target.LoopNode.M})"))
1635using (EmitBlock(writer, $"if ({SpanLengthCheck(requiredLength, dynamicRequiredLength)})"))
1784using (EmitBlock(writer, $"switch ({sliceSpan}[{sliceStaticPos}])"))
1980using (EmitBlock(writer, $"// Branch {i}", faux: !isAtomic))
2097using (EmitBlock(writer, $"switch ({switchClause})"))
2131using (EmitBlock(writer, $"if (base.IsMatched({capnum}))"))
2139using (EmitBlock(writer, $"if (!base.IsMatched({capnum}))"))
2159using (EmitBlock(writer, $" !inputSpan.Slice(base.MatchIndex({capnum}), matchLength).SequenceEqual({sliceSpan}.Slice(0, matchLength)))"))
2170using (EmitBlock(writer, $" !inputSpan.Slice(base.MatchIndex({capnum}), matchLength).SequenceEqual(inputSpan.Slice(pos - matchLength, matchLength)))"))
2206using (EmitBlock(writer, $"if (base.IsMatched({capnum}))"))
2216using (EmitBlock(writer, $"else"))
2252using (EmitBlock(writer, $"if (!base.IsMatched({capnum}))"))
2324using (EmitBlock(writer, $"switch ({resumeAt})"))
2519using (EmitBlock(writer, $"switch ({resumeAt})"))
2580using (EmitBlock(writer, $"if (!base.IsMatched({uncapnum}))"))
2885using (EmitBlock(writer, null, faux: rm.Analysis.MayBacktrack(node)))
2993using (EmitBlock(writer, "if (base.runtextpos < pos)"))
3076using (EmitBlock(writer, null))
3157using (EmitBlock(writer, clause))
3194using (EmitBlock(writer, $"if ({call}(inputSpan, pos{(sliceStaticPos > 0 ? $" + {sliceStaticPos}" : "")}))"))
3219using (EmitBlock(writer, node.Kind == RegexNodeKind.Beginning ?
3229using (EmitBlock(writer, sliceStaticPos > 0 ?
3238using (EmitBlock(writer, sliceStaticPos > 0 ?
3247using (EmitBlock(writer, sliceStaticPos > 0 ?
3256using (EmitBlock(writer, sliceStaticPos > 0 ?
3282using (EmitBlock(writer, $"if ((uint)(pos - {str.Length}) >= inputSpan.Length)"))
3288using (EmitBlock(writer, $"for (int i = 0; i < {str.Length}; i++)"))
3290using (EmitBlock(writer, $"if (inputSpan[--pos] != {Literal(str)}[{str.Length - 1} - i])"))
3307using (EmitBlock(writer, $"if ({clause})"))
3411using (EmitBlock(writer, $"{setEndingPosCondition}.{indexOfExpr}) < 0)"))
3420using (EmitBlock(writer, $"if ({startingPos} {(!rtl ? ">=" : "<=")} {endingPos})"))
3534using (EmitBlock(writer, $"if ({iterationCount} >= {maxIterations})"))
3613using (EmitBlock(writer, overlap ?
3633using (EmitBlock(writer, $"if ({startingPos} < 0)"))
3823using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
3834using (EmitBlock(writer, $"if (pos == {startingPos})"))
3882using (EmitBlock(writer, $"if ({iterationCount} > 0)"))
3957clause = EmitBlock(writer, $"if ({sawEmpty} != 0)");
3964clause = EmitBlock(writer, $"if ({CountIsGreaterThanOrEqualTo(iterationCount, maxIterations)} || {sawEmpty} != 0)");
3971clause = EmitBlock(writer, $"if ({CountIsGreaterThanOrEqualTo(iterationCount, maxIterations)})");
4039using (EmitBlock(writer, $"for (int i = 0; i < {iterations}; i++)"))
4076using (EmitBlock(writer, null))
4098using (EmitBlock(writer, $"if ({sliceSpan}.Slice({sliceStaticPos}, {iterations}).{containsExpr})"))
4108using (EmitBlock(writer, $"for (int i = 0; i < {repeaterSpan}.Length; i++)"))
4169using (EmitBlock(writer, $"while ({maxClause}pos > {iterationLocal} && {expr})"))
4196using (EmitBlock(writer, $"if ({iterationLocal} < 0)"))
4225using (EmitBlock(writer, $"while ({maxClause}(uint){iterationLocal} < (uint){sliceSpan}.Length && {expr})"))
4235using (EmitBlock(writer, $"if ({CountIsLessThan(iterationLocal, minIterations)})"))
4281using (EmitBlock(writer, $"if ({spaceAvailable} && {expr})"))
4308using (EmitBlock(writer, $"for (int {i} = 0; {i} < {node.M}; {i}++)"))
4459clause = EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, maxIterations)})");
4467clause = EmitBlock(writer, $"if (pos != {startingPos} || {CountIsLessThan(iterationCount, minIterations)})");
4475clause = EmitBlock(writer, $"if ((pos != {startingPos} || {CountIsLessThan(iterationCount, minIterations)}) && {CountIsLessThan(iterationCount, maxIterations)})");
4481clause = EmitBlock(writer, $"if (pos != {startingPos})");
4488clause = EmitBlock(writer, $"if (pos != {startingPos} && {CountIsLessThan(iterationCount, maxIterations)})");
4506using (EmitBlock(writer, $"if (--{iterationCount} < 0)"))
4531using (EmitBlock(writer, $"if ({iterationCount} == 0)"))
4544using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
4557using (EmitBlock(writer, $"if ({CountIsLessThan(iterationCount, minIterations)})"))
4569using (EmitBlock(writer, $"if ({iterationCount} != 0)"))
4608using (EmitBlock(writer, $"if ({iterationCount} == 0)"))
4912using (rm.MatchTimeout is null ? EmitBlock(writer, $"if ({HelpersTypeName}.{HasDefaultTimeoutFieldName})") : default)