Example #1
0
        override TExpression VisitConditional(ConditionalExpressionAlias node)
        {
            if (node == null)
            {
                throw new ArgumentNullException(nameof(node));
            }

            var t = Visit(node.Test);
            var p = Visit(node.IfTrue);
            var n = Visit(node.IfFalse);

            return(MakeConditional(node, t, p, n));
        }
Example #2
0
 /// <summary>
 /// Makes an expression representing a ConditionalExpression with the given children.
 /// </summary>
 /// <param name="node">Original expression.</param>
 /// <param name="test">Test expression.</param>
 /// <param name="ifTrue">True branch expression.</param>
 /// <param name="ifFalse">False branch expression.</param>
 /// <returns>Representation of the original expression.</returns>
 protected abstract TExpression MakeConditional(ConditionalExpressionAlias node, TExpression test, TExpression ifTrue, TExpression ifFalse);