public void parseVariable(Variable variable) { if (variable == null || variable.isParsed()) { return; } //Se obtiene la posición del tipo de dato equivalente del cubo semántico que le dió a la variable el Parser int posSemCube = cuboSemantico.getCubePosition(variable.getType()); variable.setType(posSemCube); //Se guarda el nuevo valor de su tipo de dato variable.setParsed(); //Se indica que ya fue parseada esta variable }
public Variable getTempVar(int type, bool isParsed) { //Se crea el nombre de la siguente variable temporal string tempVarName = "tempVar" + tempCont; //Se crea un objeto tipo Variable de la variable temporal Variable tempVar = new Variable(tempVarName, type); if (!isParsed) { codeGenerator.parseVariable(tempVar); } else { tempVar.setParsed(); } //Se le asigna una dirección de memoria a la variable temporal assignlocalAddress(tempVar); tempCont++; return(tempVar); }