/// <summary> /// Choose the minimum and maximum number of field indices as column boundary. /// </summary> public void GetPseudoColumns(out int firstPseudoColumn, out int lastPseudoColumn) { var fieldIndices = XFields.Union(YFields).Select(f => f.Index); firstPseudoColumn = fieldIndices.Min(); lastPseudoColumn = fieldIndices.Max(); }
public override int GetHashCode() { var hashCode = -1959644465; hashCode = hashCode * -1521134295 + XFields?.Count.GetHashCode() ?? 0; hashCode = hashCode * -1521134295 + XFields?.Select(field => field.GetHashCode()).Aggregate(0, (acc, val) => acc ^ val) ?? 0; hashCode = hashCode * -1521134295 + YFields?.Count.GetHashCode() ?? 0; hashCode = hashCode * -1521134295 + YFields?.Select(field => field.GetHashCode()).Aggregate(0, (acc, val) => acc ^ val) ?? 0; hashCode = hashCode * -1521134295 + Grouping?.GetHashCode() ?? 0; hashCode = hashCode * -1521134295 + CType.GetHashCode(); hashCode = hashCode * -1521134295 + Orientation.GetHashCode(); hashCode = hashCode * -1521134295 + FirstIndex.GetHashCode(); hashCode = hashCode * -1521134295 + LastIndex.GetHashCode(); return(hashCode); }