public object Clone() { DependencyInformation that = new DependencyInformation(); that.dependencyTypeOf = Clone(dependencyTypeOf); // the OffsetInfo values inside the offsetIndexOf dictionary are not cloned. that.offsetIndexOf = Clone(offsetIndexOf); that.IsOutput = IsOutput; that.IsUniform = IsUniform; that.IsFresh = IsFresh; that.ParameterDependencies = Clone(ParameterDependencies); return(that); }
public override bool Equals(object obj) { DependencyInformation di = obj as DependencyInformation; if (di == null) { return(false); } if (di.IsUniform != IsUniform) { return(false); } if (ParameterDependencies != di.ParameterDependencies) { return(false); } if (di.IsOutput != IsOutput) { return(false); } if (!SetsAreEqual(Dependencies, di.Dependencies)) { return(false); } // if (!SetEquals(DeclDependencies,di.DeclDependencies)) return false; if (!SetsAreEqual(Requirements, di.Requirements)) { return(false); } //if (!SetEquals(RequiredNumberSet,di.RequiredNumberSet)) return false; if (!SetsAreEqual(Triggers, di.Triggers)) { return(false); } if (!SetsAreEqual(FreshDependencies, di.FreshDependencies)) { return(false); } if (!SetsAreEqual(Initializers, di.Initializers)) { return(false); } return(true); }