コード例 #1
0
        public static Expresion parsea()
        {
            Expresion resultado;

            if (pieza == "(")
            {
                siguientePieza();
                resultado = OperadorO.parsea();
                if (pieza == null)
                {
                    throw new Exception("Error de sintaxis");
                }
                if (pieza != ")")
                {
                    throw new Exception("Error de sintaxis");
                }
                siguientePieza();
            }
            else
            {
                resultado = PalabraClave.parsea();
            }

            return(resultado);
        }
コード例 #2
0
 public static Expresion analiza(string fuente)
 {
     Expresion.fuente = fuente;
     indice           = 0;
     siguientePieza();
     return(OperadorO.parsea());
 }
コード例 #3
0
        // parte análisis sintáctico
        public static new Expresion parsea()
        {
            Expresion resultadoIzquierdo, resultadoDerecho;

            resultadoIzquierdo = OperadorY.parsea();
            while ((pieza != null) && (pieza == "o"))
            {
                siguientePieza();
                resultadoDerecho   = OperadorY.parsea();
                resultadoIzquierdo = new OperadorO(resultadoIzquierdo,
                                                   resultadoDerecho);
            }
            return(resultadoIzquierdo);
        }