public override void RemoveVariable(MetaType metaType, MetaVariable metaVariable) { base.RemoveVariable(metaType, metaVariable); foreach (MetaClass metaClass in this.classes) { metaClass.RemoveVariable(metaType, metaVariable); } }
public override void UpdateVariable(MetaType metaType, MetaVariable oldVariable, MetaVariable newVariable) { base.UpdateVariable(metaType, oldVariable, newVariable); foreach (MetaClass metaClass in this.classes) { metaClass.UpdateVariable(metaType, oldVariable, newVariable); } }
public override void RemoveVariable(MetaType metaType, MetaVariable metaVariable) { base.RemoveVariable(metaType, metaVariable); if (this.Equals(metaType)) { for (int i = 0; i < this.variables.Count; i++) { if (this.variables[i].Equals(metaVariable)) { this.variables.RemoveAt(i); break; } } } }
public override void UpdateVariable(MetaType metaType, MetaVariable oldVariable, MetaVariable newVariable) { base.UpdateVariable(metaType, oldVariable, newVariable); if (this.Equals(metaType)) { for (int i = 0; i < this.variables.Count; i++) { if (this.variables[i].Equals(oldVariable)) { this.variables[i] = newVariable; } else { this.variables[i].UpdateVariable(metaType, oldVariable, newVariable); } } } }
public MetaVariable FindMatchingVariable(MetaVariable metaVariable) { return(this.variables.Find(v => v.Equals(metaVariable))); }