1 write to expression
Microsoft.Build (1)
Evaluation\ExpressionShredder.cs (1)
113this.expression = expression;
21 references to expression
Microsoft.Build (21)
Evaluation\ExpressionShredder.cs (21)
129if (!Sink(expression, ref currentIndex, end, '@', '(')) 143SinkWhitespace(expression, ref currentIndex); 147if (!SinkValidName(expression, ref currentIndex, end)) 156if (end > currentIndex && expression[currentIndex - 1] == '-' && expression[currentIndex] == '>') 163string itemName = Microsoft.NET.StringTools.Strings.WeakIntern(expression.AsSpan(startOfName, currentIndex - startOfName)); 165SinkWhitespace(expression, ref currentIndex); 170while (Sink(expression, ref currentIndex, end, '-', '>') && transformOrFunctionFound) 172SinkWhitespace(expression, ref currentIndex); 175bool isQuotedTransform = SinkSingleQuotedExpression(expression, ref currentIndex, end); 185transformExpressions.Add(new ItemExpressionCapture(startQuoted, endQuoted - startQuoted, expression.Substring(startQuoted, endQuoted - startQuoted))); 190ItemExpressionCapture? functionCapture = SinkItemFunctionExpression(expression, startTransform, ref currentIndex, end); 214SinkWhitespace(expression, ref currentIndex); 220if (Sink(expression, ref currentIndex, ',')) 222SinkWhitespace(expression, ref currentIndex); 224if (!Sink(expression, ref currentIndex, '\'')) 230int closingQuote = expression.IndexOf('\'', currentIndex); 238separator = expression.Substring(currentIndex, closingQuote - currentIndex); 243SinkWhitespace(expression, ref currentIndex); 245if (!Sink(expression, ref currentIndex, ')')) 257ItemExpressionCapture expressionCapture = new ItemExpressionCapture(startPoint, endPoint - startPoint, Microsoft.NET.StringTools.Strings.WeakIntern(expression.AsSpan(startPoint, endPoint - startPoint)), itemName, separator, separatorStart, transformExpressions);