/// <summary> /// Accepts a visitor evaluating the logical expression. /// </summary> /// <param name="visitor">Evaluation visitor.</param> /// <returns>True if the expression is logically true. False otherwise.</returns> public bool Accept(IExpressionEvalVisitor visitor) { foreach (var child in Children) { if (!child.Accept(visitor)) { return(false); } } return(true); }
/// <summary> /// Accepts a visitor evaluating the logical expression. /// </summary> /// <param name="visitor">Evaluation visitor.</param> /// <returns>True if the expression is logically true. False otherwise.</returns> public bool Accept(IExpressionEvalVisitor visitor) { return(visitor.Visit(this)); }
/// <summary> /// Accepts a visitor evaluating the logical expression. /// </summary> /// <param name="visitor">Evaluation visitor.</param> /// <returns>True if the expression is logically true. False otherwise.</returns> public bool Accept(IExpressionEvalVisitor visitor) { return(Child.Accept(visitor)); }
/// <summary> /// Accepts a visitor evaluating the logical expression. /// </summary> /// <param name="visitor">Evaluation visitor.</param> /// <returns>True if the expression is logically true. False otherwise.</returns> public bool Accept(IExpressionEvalVisitor visitor) { // (a imply b) ~ (not(a) or b) return(!LeftChild.Accept(visitor) || RightChild.Accept(visitor)); }