2 types derived from GenericExpressionNode
Microsoft.Build (2)
Evaluation\Conditionals\OperandExpressionNode.cs (1)
11internal abstract class OperandExpressionNode : GenericExpressionNode
Evaluation\Conditionals\OperatorExpressionNode.cs (1)
15internal abstract class OperatorExpressionNode : GenericExpressionNode
57 references to GenericExpressionNode
Microsoft.Build (43)
Evaluation\Conditionals\FunctionCallExpressionNode.cs (4)
21private readonly List<GenericExpressionNode> _arguments; 24internal FunctionCallExpressionNode(string functionName, List<GenericExpressionNode> arguments) 115private static string ExpandArgumentForScalarParameter(string function, GenericExpressionNode argumentNode, ConditionEvaluator.IConditionEvaluationState state, 150private List<string> ExpandArgumentAsFileList(GenericExpressionNode argumentNode, ConditionEvaluator.IConditionEvaluationState state, bool isFilePath = true)
Evaluation\Conditionals\NotExpressionNode.cs (1)
45/// <inheritdoc cref="GenericExpressionNode"/>
Evaluation\Conditionals\NumericExpressionNode.cs (1)
40/// <inheritdoc cref="GenericExpressionNode"/>
Evaluation\Conditionals\OperatorExpressionNode.cs (3)
46/// <inheritdoc cref="GenericExpressionNode"/> 73internal GenericExpressionNode LeftChild { set; get; } 78internal GenericExpressionNode RightChild { set; get; }
Evaluation\Conditionals\Parser.cs (24)
98internal GenericExpressionNode Parse(string expression, ParserOptions optionSettings, ElementLocation elementLocation) 114GenericExpressionNode node = Expr(expression); 128private GenericExpressionNode Expr(string expression) 130GenericExpressionNode node = BooleanTerm(expression); 153private GenericExpressionNode ExprPrime(string expression, GenericExpressionNode lhs) 162GenericExpressionNode rhs = BooleanTerm(expression); 176private GenericExpressionNode BooleanTerm(string expression) 178GenericExpressionNode node = RelationalExpr(expression); 192private GenericExpressionNode BooleanTermPrime(string expression, GenericExpressionNode lhs) 200GenericExpressionNode rhs = RelationalExpr(expression); 219private GenericExpressionNode RelationalExpr(string expression) 222GenericExpressionNode lhs = Factor(expression); 234GenericExpressionNode rhs = Factor(expression); 271private GenericExpressionNode Factor(string expression) 274GenericExpressionNode arg = this.Arg(expression); 292var arglist = new List<GenericExpressionNode>(); 304GenericExpressionNode child = Expr(expression); 318GenericExpressionNode expr = Factor(expression); 335private void Arglist(string expression, List<GenericExpressionNode> arglist) 343private void Args(string expression, List<GenericExpressionNode> arglist) 345GenericExpressionNode arg = Arg(expression); 353private GenericExpressionNode Arg(string expression)
Evaluation\Conditionals\StringExpressionNode.cs (1)
120/// <inheritdoc cref="GenericExpressionNode"/>
Evaluation\ConditionEvaluator.cs (9)
143private readonly ConcurrentDictionary<string, ConcurrentStack<GenericExpressionNode>> _conditionPools; 148public ExpressionTreeForCurrentOptionsWithSize(ConcurrentDictionary<string, ConcurrentStack<GenericExpressionNode>> conditionPools) 154public ConcurrentStack<GenericExpressionNode> GetOrAdd(string condition, Func<string, ConcurrentStack<GenericExpressionNode>> addFunc) 245_ => new ExpressionTreeForCurrentOptionsWithSize(new ConcurrentDictionary<string, ConcurrentStack<GenericExpressionNode>>(StringComparer.Ordinal))); 250var expressionPool = cachedExpressionTreesForCurrentOptions.GetOrAdd(condition, _ => new ConcurrentStack<GenericExpressionNode>()); 254if (!expressionPool.TryPop(out var parsedExpression)) 321new ConcurrentDictionary<string, ConcurrentStack<GenericExpressionNode>>(StringComparer.Ordinal)), 328new ConcurrentDictionary<string, ConcurrentStack<GenericExpressionNode>>(StringComparer.Ordinal));
Microsoft.Build.Engine.UnitTests (14)
ExpressionTree_Tests.cs (3)
101GenericExpressionNode tree; 439GenericExpressionNode tree = p.Parse(expression, ParserOptions.AllowAll, MockElementLocation.Instance); 476GenericExpressionNode tree = p.Parse(expression, ParserOptions.AllowAll, MockElementLocation.Instance);
ExpressionTreeExpression_Tests.cs (3)
436GenericExpressionNode tree = p.Parse(expression, ParserOptions.AllowAll, ElementLocation.EmptyLocation); 460GenericExpressionNode tree = p.Parse(expression, ParserOptions.AllowAll, ElementLocation.EmptyLocation); 491var tree = p.Parse(expression, ParserOptions.AllowAll, ElementLocation.EmptyLocation);
Parser_Tests.cs (8)
30GenericExpressionNode tree = p.Parse("$(foo)", ParserOptions.AllowAll, _elementLocation); 79GenericExpressionNode tree = p.Parse("$(foo)", ParserOptions.AllowAll, _elementLocation); 107GenericExpressionNode tree = p.Parse("!true", ParserOptions.AllowAll, _elementLocation); 124GenericExpressionNode tree = p.Parse("SimpleFunctionCall()", ParserOptions.AllowAll, _elementLocation); 138GenericExpressionNode tree; 218GenericExpressionNode tree = p.Parse("@(item->foo('ab'))", 237GenericExpressionNode tree; 318GenericExpressionNode tree;