private void addToken(Token.TIPO tipo, int fila, int columna) { Token token = new Token(listaTokens.Count + 1, auxLex, fila, columna, tipo); listaTokens.Add(token); auxLex = ""; }
public void validarToken(int linea, int columna, Token.TIPO tipo) { tokens.Add(new Token(linea, columna, token, tipo)); token = ""; estado = 0; i--; }
public Movimiento(string id, Token.TIPO tipo) { this.id = id; this.tipo = tipo; mueve = new List <int>(); edomov = new EstadoAFD(-1); }
public void validarError(Token.TIPO tipo, int linea, int columna) { errores.Add(new Token(linea, columna, token, tipo)); token = ""; estado = 0; mal = true; i--; }
public SubAFN crearAFN(Stack <Object[]> p, Stack <object[]> simbolos) { Stack <SubAFN> pila = new Stack <SubAFN>(); while (p.Count != 0) { Object[] simbolo = p.Pop(); Token.TIPO tipo = (Token.TIPO)simbolo[1]; switch (tipo) { case Token.TIPO.CADENA: case Token.TIPO.TODO: case Token.TIPO.CONJ: case Token.TIPO.TAB: case Token.TIPO.ENTER: case Token.TIPO.COMILLA: case Token.TIPO.APOSTROFE: simbolos.Push(simbolo); pila.Push(this.crearBasico((string)simbolo[0])); break; case Token.TIPO.CONCATENACION: pila.Push(this.crearConcatenacion(pila.Pop(), pila.Pop())); break; case Token.TIPO.OR: pila.Push(this.crearOr(pila.Pop(), pila.Pop())); break; case Token.TIPO.CERRADURAKLEENE: pila.Push(this.crearKleene(pila.Pop())); break; case Token.TIPO.CERRADURAPOSITIVA: pila.Push(this.crearPositiva(pila.Pop())); break; case Token.TIPO.INTERROGACION: pila.Push(this.crearUnaoNinguna(pila.Pop())); break; } } return(pila.Peek()); }