public void TestBooleanBinaryExpressionAccept() { Mock <KoraliumSqlVisitor> mock = new Mock <KoraliumSqlVisitor>(); BooleanBinaryExpression booleanBinaryExpression = new BooleanBinaryExpression(); booleanBinaryExpression.Accept(mock.Object); mock.Verify(x => x.VisitBooleanBinaryExpression(booleanBinaryExpression)); }
public void Visit(BooleanBinaryExpression booleanBinaryExpression) { if (_innerVisitor != null) { booleanBinaryExpression.Accept(_innerVisitor); } booleanBinaryExpression.Left.Accept(this); booleanBinaryExpression.Right.Accept(this); }
public override void VisitBetweenExpression(BetweenExpression betweenExpression) { //Convert the between expression into a boolean binary expression var convertedExpression = new BooleanBinaryExpression() { Left = new BooleanComparisonExpression() { Left = betweenExpression.Expression, Right = betweenExpression.From, Type = BooleanComparisonType.GreaterThanOrEqualTo }, Right = new BooleanComparisonExpression() { Left = betweenExpression.Expression, Right = betweenExpression.To, Type = BooleanComparisonType.LessThanOrEqualTo }, Type = BooleanBinaryType.AND }; //Visit the newly constructed boolean binary expression instead convertedExpression.Accept(this); }