Esempio n. 1
0
        private void traducirToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Console.WriteLine(!(true || false));
            Syntactic mySyntactic = new Syntactic();
            //bool resultado = mySyntactic.analyze(getRichTextBox().Text);
            ParseTreeNode resultado = mySyntactic.analyze(getRichTextBox().Text);

            if (resultado != null)
            {
                MessageBox.Show("Analisis Correcto");
                richTextBox1.Text = "";
                String text     = "";
                String lenguaje = (Recorrido.recorrerAST(resultado.ChildNodes.ElementAt(0), text));
                getRichTextBox2().Text = lenguaje;
                Recorrido.traducir(resultado);
                Syntactic.generarImagen(resultado);
            }
            else
            {
                MessageBox.Show("Analisis con errores");
                richTextBox1.Text = "";

                foreach (sol.com.analyzer.Token item in Syntactic.lista)
                {
                    richTextBox1.Text += "\nError " + item.tipo + ": Lexema: \"" + item.lexema + "\"" + ", Linea: " + item.fila + ", Columna: " + item.columna + ", Descripcion: " + item.descripcion;
                }
            }
        }