private void RehashReference(Reference @ref) { ReferencePoolInfo info = _referenceMap[@ref]; _referenceMap.Remove(@ref); @ref.ComputeHashCode(); _referenceMap.Add(@ref, info); }
private void ComputeRawReferenceHashCodes() { for (int i = 0; i <= _rawReferences.Length - 1; i++) { Reference @ref = _rawReferences[i]; @ref.ComputeHashCode(); } }
/// <summary> /// Offset all our references for a copy operation /// </summary> internal void OffsetReferencesForCopy(ISheet destSheet, int rowOffset, int columnOffset) { if (SelfReference != null) { throw new InvalidOperationException("Cannot offset references while formula is in engine"); } for (int i = 0; i <= _rawReferences.Length - 1; i++) { // Ask each reference to offset itself and pass it its appropriate reference properties Reference @ref = _rawReferences[i]; @ref.OnCopy(rowOffset, columnOffset, destSheet, _referenceProperties[i]); @ref.ComputeHashCode(); } ComputeDependencyReferences(); }