Exemplo n.º 1
0
        public void parse(Lexico scanner, Semantico semanticAnalyser)
        {
            this.scanner = scanner;
            this.semanticAnalyser = semanticAnalyser;

            stack.Clear();
            stack.Push(DOLLAR);
            stack.Push(START_SYMBOL);

            currentToken = scanner.nextToken();

            while (!step());
        }
Exemplo n.º 2
0
        public void parse(Lexico scanner, Semantico semanticAnalyser)
        {
            this.scanner          = scanner;
            this.semanticAnalyser = semanticAnalyser;

            stack.Clear();
            stack.Push(DOLLAR);
            stack.Push(START_SYMBOL);

            currentToken = scanner.nextToken();

            while (!step())
            {
                ;
            }
        }
Exemplo n.º 3
0
        public void executa(string comandos)
        {
            try
            {
                tabResultado.SelectedIndex = 0;
                clearMensagem();
                Stopwatch sw = new Stopwatch();
                sw.Start();
                addMensagem("Executando...");
                Semantico semantico = new Semantico(this);
                Lexico lexico = new Lexico(comandos);
                Sintatico sintatico = new Sintatico();
                sintatico.parse(lexico, semantico);
                semantico.Dispose();
                semantico = null;
                sw.Stop();

                Base.getInstance().commit();

                TimeSpan tempo = sw.Elapsed;
                addMensagem(String.Format("Sucesso!!! Tempo de Execução: {0}min {1}s {2}ms", tempo.Minutes, tempo.Seconds, tempo.Milliseconds));
            }
            catch (Exception ex)
            {
                addMensagem("#ERROR: " + ex.ToString());
                //Console.WriteLine(ex.StackTrace);
            }
        }