Package Exceptions.Interpreter

Examples of Exceptions.Interpreter.InterpreterException


        nLinea = 0;
        posicion = 0;
        generarMapaLineas();
        do {
            if(nLlamadasRecursivas == 0) {
                throw new InterpreterException("Número de llamadas recursivas demasiado grande.");
            }
            nLinea++;
            try {
                leerSiguienteToken();
                mapaLineas.put(nLinea, posicion);
                PASEO();
            }
            catch (Exception e) {
                throw new InterpreterException("Línea " + nLinea + ": " + e.getMessage());
            }
            if (!tokenActual.lexemasIguales("TK_FIN_SENT") && !tokenActual.lexemasIguales("TK_SALIDA")) {
                throw new NewLineException("Encontrado '" + this.devolverErrorMatch(tokenActual.getLexema().substring(3)) + "', esperaba 'salto de línea'.");
            }
        }
View Full Code Here


        }
        if (esDivision()) {
            Match(new VT("TK_DIV"));
            double valor2 = F();
            if (valor2 == 0) {
                throw new InterpreterException("División entre 0.");
            }
            valor /= valor2;
            if (esMultiplicacionDivision()) {
                valor = T_PRIMA(valor);
            }
View Full Code Here

                else //Suponemos que es double entonces
                    valor = (double) tokenActual.getContenido();
                }
            }
            catch (Exception e) {
                throw new InterpreterException("No es número entero o double");
            }
            Match(new VT("TK_CTE_NUM"));
            return valor;
        }
        else if (esNumeroD()) {
View Full Code Here

            else {
                tokenActual = new Token("TK_SALIDA", finFichero);
                return;
            }
        }
        throw new InterpreterException("Esperaba " + "'" + devolverErrorMatch(v.getV().substring(3)) + "'" + ", encontrado " + "'" + devolverErrorMatch((String)tokenActual.getContenido()) + "'.");
    }
View Full Code Here

        for (Map.Entry<String, Double> entry : entrySet) {
            if (entry.getKey().compareTo(nombreID) == 0) {
                return entry.getValue();
            }
        }
        throw new InterpreterException("Identificador '" + nombreID + "' no encontrado.");
    }
View Full Code Here

        for (Entry<String, Double> entry : entrySet) {
            if (entry.getKey().compareTo(nombreID) == 0) {
                return entry.getValue();
            }
        }
        throw new InterpreterException("Identificador no encontrado.");
    }
View Full Code Here

    void saltar(int linea) {

        if (existeLinea(linea)) {
            Set<Entry<Integer, Integer>> entrySet = mapaLineas.entrySet();
            if (nLinea == linea) {
                throw new InterpreterException("Referencia a la misma línea.");
            }

            boolean encontrado = false;

            int numL = 0;
            for (Entry<Integer, Integer> entry : entrySet) {
                if (entry.getKey() == linea) {
                    posicion = entry.getValue() - 1;
                    //encontrado = true;
                    nLinea = numL;
                    tokenActual = listaTokens.get(posicion - 1);
                    return;
                }
                numL = numL + 1;
            }

            if (!encontrado) {
                throw new InterpreterException("Línea no encontrada.");
            }
        }
        throw new InterpreterException("Línea no encontrada.");
    }
View Full Code Here

TOP

Related Classes of Exceptions.Interpreter.InterpreterException

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.