private List <NodoParametro> getNodosParametros(Ambito ambito) { List <NodoParametro> parametros = new List <NodoParametro>(); foreach (Expresion e in this.parametros) { String tipo = e.getTipo(ambito); //PUEDE SER QUE NECESITE METER AQUI LO DE LOS ARREGLOS NodoParametro p = new NodoParametro("aux", tipo.ToLower(), false); parametros.Add(p); } return(parametros); }
public override bool Equals(object obj) { if (obj is NodoParametro) { NodoParametro aux = (NodoParametro)obj; if (this.tipo != aux.tipo && !aux.tipo.Equals("nulo")) { mensajeError = "El Tipo No Coincide en Parametro " + this.idparam + ", Se esperaba: " + this.tipo + " y se Encontro: " + aux.tipo; return(false); } if (this.soyVector != aux.soyVector) { if (this.soyVector) { mensajeError = "Se esperaba un Parametro de Tipo Arreglor"; } else { mensajeError = "No se esperaba un Parametro de Tipo Arreglo"; } ; return(false); } if (this.soyVector) { if (this.dimensiones.Count != aux.dimensiones.Count) { mensajeError = "El Numero de Dimensiones del Parametro Arreglo no Concuerdan"; return(false); } for (int x = 0; x < aux.dimensiones.Count; x++) { if (aux.dimensiones.ElementAt(x) != this.dimensiones.ElementAt(x)) { mensajeError = "El Tamano de Dimensiones no Concuerda"; return(false); } } } return(true); } else { return(false); } }