示例#1
0
        public void Reconocer(Context context)
        {
            try
            {
                int caracter = (int)this.cadena[indice];

                if (caracter > 47 && caracter < 58)
                {
                    lexema += this.cadena[indice];
                    Estado_2 e2 = new Estado_2(indice + 1, cadena, lexema);
                    e2.Reconocer(context);
                }
                else
                {
                    Token t = new TokenEntero(lexema);


                    Estatico.t.Text += t.mostrarToken();

                    lexema = "";
                    Estado_0 e0 = new Estado_0(indice, cadena, lexema);
                    e0.Reconocer(context);
                }
            }
            catch (Exception e)
            {
                Token t = new TokenEntero(lexema);


                Estatico.t.Text += t.mostrarToken();
            }
        }
        public void Reconocer(Context context)
        {
            try
            {
                int caracter = (int)this.cadena[indice];

                Token t = new TokenError(lexema);

                Estatico.t.Text += t.mostrarToken();

                lexema = "";
                Estado_0 e0 = new Estado_0(indice + 1, cadena, lexema);
                e0.Reconocer(context);
            }
            catch (Exception e)
            {
                Token t = new TokenError(lexema);

                Estatico.t.Text += t.mostrarToken();
            }
        }
示例#3
0
        public void Reconocer(Context context)
        {
            try
            {
                int caracter = (int)this.cadena[indice];

                if (caracter > 96 && caracter < 123)
                {
                    //LETRA
                    lexema += this.cadena[indice];
                    Estado_1 e1 = new Estado_1(indice + 1, cadena, lexema);
                    e1.Reconocer(context);
                }
                else if (caracter > 47 && caracter < 58)
                {
                    lexema += this.cadena[indice];
                    Estado_2 e2 = new Estado_2(indice + 1, cadena, lexema);
                    e2.Reconocer(context);
                }
                else if (caracter == 32)
                {
                    lexema = "";
                    Estado_0 e0 = new Estado_0(indice + 1, cadena, lexema);
                    e0.Reconocer(context);
                }
                else
                {
                    lexema += this.cadena[indice];
                    Estado_Error err = new Estado_Error(indice + 1, cadena, lexema);
                    err.Reconocer(context);
                }
            }
            catch (Exception e)
            {
            }
        }