Ejemplo n.º 1
0
        public object VisitLogicalExpr(Logical expr)
        {
            object left = Evaluate(expr.Left);

            if (expr.Op.Type == TokenType.LOG_OR)
            {
                if (IsTruthy(left))
                {
                    return(left);
                }
            }
            else
            {
                if (!IsTruthy(left))
                {
                    return(left);
                }
            }

            return(Evaluate(expr.Right));
        }
Ejemplo n.º 2
0
 public string VisitLogicalExpr(Logical expr)
 {
     return(Parenthesize(expr.Op.Lexeme, expr.Left, expr.Right));
 }