/// <summary> /// Añade una variable /// </summary> public void Add(string name, string value, int index = 0) { Variable variable = new Variable(name, ValueBase.GetInstance(value), index); int indexFound = IndexOf(name, index); if (indexFound >= 0) { this[indexFound] = variable; } else { Add(name, ValueBase.GetInstance(value), index); } }
/// <summary> /// Busca una variable /// </summary> public Variable Search(string name, int index = 0) { Variable variable = null; // Normaliza el nombre name = Variable.Normalize(name); // Obtiene el primer elemento variable = this.FirstOrDefault(objSearchVariable => objSearchVariable.Name.EqualsIgnoreCase(name) && objSearchVariable.Index == index); // Si no se ha encontrado ninguna variable, la crea if (variable == null) { // Crea la variable variable = new Variable(name, ValueBase.GetInstance("null"), index); // ... y la añade a la colección Add(variable); } // Devuelve la variable return(variable); }