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); }
public static Expresion analiza(string fuente) { Expresion.fuente = fuente; indice = 0; siguientePieza(); return(OperadorO.parsea()); }
// 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); }