Skip to content

Commit 7728009

Browse files
committed
A bit faster parameter validation
1 parent c4f82ad commit 7728009

2 files changed

Lines changed: 6 additions & 3 deletions

File tree

Orm/Xtensive.Orm/Orm/Internals/KeyFactory.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,8 @@ public static Key Materialize(Domain domain, string nodeId,
8282
TypeInfo type, TypeReferenceAccuracy accuracy, params object[] values)
8383
{
8484
var keyInfo = type.Key;
85-
ArgumentValidator.EnsureArgumentIsInRange(values.Length, 1, keyInfo.TupleDescriptor.Count, "values");
85+
ArgumentOutOfRangeException.ThrowIfLessThan(values.Length, 1, "values.Length");
86+
ArgumentOutOfRangeException.ThrowIfGreaterThan(values.Length, keyInfo.TupleDescriptor.Count, "values.Length");
8687

8788
var tuple = Tuple.Create(keyInfo.TupleDescriptor);
8889
int typeIdIndex = keyInfo.TypeIdColumnIndex;

Orm/Xtensive.Orm/Tuples/TupleDescriptor.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,8 @@ IEnumerator IEnumerable.GetEnumerator()
7777
/// </returns>
7878
public TupleDescriptor Head(int fieldCount)
7979
{
80-
ArgumentValidator.EnsureArgumentIsInRange(fieldCount, 1, Count, nameof(fieldCount));
80+
ArgumentOutOfRangeException.ThrowIfLessThan(fieldCount, 1);
81+
ArgumentOutOfRangeException.ThrowIfGreaterThan(fieldCount, this.fieldTypes.Length);
8182
var fieldTypes = new Type[fieldCount];
8283
Array.Copy(this.fieldTypes, 0, fieldTypes, 0, fieldCount);
8384
return new TupleDescriptor(fieldTypes);
@@ -92,7 +93,8 @@ public TupleDescriptor Head(int fieldCount)
9293
/// </returns>
9394
public TupleDescriptor Tail(int tailFieldCount)
9495
{
95-
ArgumentValidator.EnsureArgumentIsInRange(tailFieldCount, 1, Count, nameof(tailFieldCount));
96+
ArgumentOutOfRangeException.ThrowIfLessThan(tailFieldCount, 1);
97+
ArgumentOutOfRangeException.ThrowIfGreaterThan(tailFieldCount, this.fieldTypes.Length);
9698
var fieldTypes = new Type[tailFieldCount];
9799
Array.Copy(this.fieldTypes, Count - tailFieldCount, fieldTypes, 0, tailFieldCount);
98100
return new TupleDescriptor(fieldTypes);

0 commit comments

Comments
 (0)