28 writes to currentIndex
Microsoft.Build (28)
Evaluation\ExpressionShredder.cs (28)
116currentIndex = expression.IndexOf('@', start, end - start); 119currentIndex = int.MaxValue; 127for (; currentIndex < end; currentIndex++) 129if (!Sink(expression, ref currentIndex, end, '@', '(')) 143SinkWhitespace(expression, ref currentIndex); 147if (!SinkValidName(expression, ref currentIndex, end)) 149currentIndex = restartPoint; 158currentIndex--; 165SinkWhitespace(expression, ref currentIndex); 170while (Sink(expression, ref currentIndex, end, '-', '>') && transformOrFunctionFound) 172SinkWhitespace(expression, ref currentIndex); 175bool isQuotedTransform = SinkSingleQuotedExpression(expression, ref currentIndex, end); 187SinkWhitespace(expression, ref currentIndex); 192ItemExpressionCapture? functionCapture = SinkItemFunctionExpression(expression, startTransform, ref currentIndex, end); 202SinkWhitespace(expression, ref currentIndex); 208currentIndex = restartPoint; 218SinkWhitespace(expression, ref currentIndex); 224if (Sink(expression, ref currentIndex, ',')) 226SinkWhitespace(expression, ref currentIndex); 228if (!Sink(expression, ref currentIndex, '\'')) 230currentIndex = restartPoint; 237currentIndex = restartPoint; 244currentIndex = closingQuote + 1; 247SinkWhitespace(expression, ref currentIndex); 249if (!Sink(expression, ref currentIndex, ')')) 251currentIndex = restartPoint; 256currentIndex--; 264++currentIndex;
17 references to currentIndex
Microsoft.Build (17)
Evaluation\ExpressionShredder.cs (17)
117if (currentIndex < 0) 127for (; currentIndex < end; currentIndex++) 138int restartPoint = currentIndex - 1; 141int startPoint = currentIndex - 2; 145int startOfName = currentIndex; 156if (end > currentIndex && expression[currentIndex - 1] == '-' && expression[currentIndex] == '>') 163string itemName = Microsoft.NET.StringTools.Strings.WeakIntern(expression.AsSpan(startOfName, currentIndex - startOfName)); 173int startTransform = currentIndex; 179int endQuoted = currentIndex - 1; 191startTransform = currentIndex; 234int closingQuote = expression.IndexOf('\'', currentIndex); 241separatorStart = currentIndex - startPoint; 242separator = expression.Substring(currentIndex, closingQuote - currentIndex); 255int endPoint = currentIndex;