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); 186transformExpressions.Add(new ItemExpressionCapture(startQuoted, endQuoted - startQuoted, expression.Substring(startQuoted, endQuoted - startQuoted))); 191ItemExpressionCapture? functionCapture = SinkItemFunctionExpression(expression, startTransform, ref currentIndex, end); 216SinkWhitespace(expression, ref currentIndex); 222if (Sink(expression, ref currentIndex, ',')) 224SinkWhitespace(expression, ref currentIndex); 226if (!Sink(expression, ref currentIndex, '\'')) 232int closingQuote = expression.IndexOf('\'', currentIndex); 240separator = expression.Substring(currentIndex, closingQuote - currentIndex); 245SinkWhitespace(expression, ref currentIndex); 247if (!Sink(expression, ref currentIndex, ')')) 259ItemExpressionCapture expressionCapture = new ItemExpressionCapture(startPoint, endPoint - startPoint, Microsoft.NET.StringTools.Strings.WeakIntern(expression.AsSpan(startPoint, endPoint - startPoint)), itemName, separator, separatorStart, transformExpressions);