Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetHashCode() [2/2]

int System.Data.DataRowComparer< TRow >.GetHashCode ( TRow row)
inline

Definition at line 147 of file DataRowComparer.cs.

148 {
149 DataSetUtil.CheckArgumentNull(row, "row");
150 if (row.RowState == DataRowState.Deleted)
151 {
153 }
154 int result = 0;
155 if (row.Table.Columns.Count > 0)
156 {
157 object obj = row[0];
158 Type type = obj.GetType();
159 if (!type.IsArray)
160 {
161 result = ((!(obj is ValueType valueType)) ? obj.GetHashCode() : valueType.GetHashCode());
162 }
163 else
164 {
165 Array array = (Array)obj;
166 if (array.Rank > 1)
167 {
168 result = obj.GetHashCode();
169 }
170 else if (array.Length > 0)
171 {
172 result = array.GetValue(array.GetLowerBound(0)).GetHashCode();
173 }
174 }
175 }
176 return result;
177 }
static InvalidOperationException InvalidOperation(string message)
static string DataSetLinq_CannotCompareDeletedRow
Definition SR.cs:932
Definition SR.cs:7

References System.array, System.Collections.Generic.Dictionary< TKey, TValue >.Count, System.SR.DataSetLinq_CannotCompareDeletedRow, System.Data.DataRowComparer< TRow >.GetHashCode(), System.Type.GetType(), DataSetUtil.InvalidOperation(), System.obj, and System.type.

Referenced by System.Data.DataRowComparer< TRow >.GetHashCode().