Пример #1
0
        private void compilar()
        {
            AnalisisLexico   analisisLexico = new AnalisisLexico();
            ComponenteLexico componente     = analisisLexico.devolverComponenteLexico();


            try
            {
                while (!componente.Lexema.Equals("@EOF@"))
                {
                    MessageBox.Show(componente.imprimir());
                    componente = analisisLexico.devolverComponenteLexico();
                }
                MessageBox.Show(componente.imprimir());
                componente = analisisLexico.devolverComponenteLexico();



                if (ManejadorErrores.ManejadorErrores.obtenerInstancia().hayErroresCompilacion())
                {
                    MessageBox.Show("El programa esta mal escrito. Verifique la consola de errores");
                }
                else
                {
                    MessageBox.Show("El programa esta bien escrito");
                }

                //Refrescar tablas de símbolos, literales...aquí. Falta el código para refrescarlas!!
            }
            catch (Exception excepcion)
            {
                MessageBox.Show("El programa esta mal escrito. Verifique la consola " +
                                "de errores ya que se ha presentado un error no controlable!!!" +
                                "El detalle del error no controlable es: " + excepcion.Message);
            }
        }