Skip to content

Commit 2e439fc

Browse files
committed
avoid double array indexing by using ref var
1 parent 7d033a9 commit 2e439fc

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

Orm/Xtensive.Orm/Tuples/Packed/TupleLayout.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -114,17 +114,17 @@ public static void ConfigureFieldAccessor(ref PackedFieldDescriptor descriptor,
114114
descriptor.AccessorIndex = ((PackedFieldAccessor)ValueFieldAccessorResolver.GetValue(fieldType) ?? ObjectAccessor).Index;
115115

116116
[MethodImpl(MethodImplOptions.AggressiveInlining)]
117-
public static void ConfigureLen1(Type[] fieldTypes, ref PackedFieldDescriptor descriptor, out int valuesLength,
117+
public static void ConfigureLen1(ref Type fieldType, ref PackedFieldDescriptor descriptor, out int valuesLength,
118118
out int objectsLength)
119119
{
120-
var valueAccessor = ValueFieldAccessorResolver.GetValue(fieldTypes[0]);
120+
var valueAccessor = ValueFieldAccessorResolver.GetValue(fieldType);
121121
if (valueAccessor != null) {
122122
descriptor.AccessorIndex = valueAccessor.Index;
123123
descriptor.DataPosition = Val064BitCount;
124124

125125
valuesLength = (valueAccessor.ValueBitCount + ((Val064BitCount * 2) - 1)) >> Val064Rank;
126126
objectsLength = 0;
127-
fieldTypes[0] = valueAccessor.FieldType;
127+
fieldType = valueAccessor.FieldType;
128128
return;
129129
}
130130

Orm/Xtensive.Orm/Tuples/TupleDescriptor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ private TupleDescriptor(Type[] fieldTypes)
276276
case 0:
277277
return;
278278
case 1:
279-
TupleLayout.ConfigureLen1(FieldTypes,
279+
TupleLayout.ConfigureLen1(ref FieldTypes[0],
280280
ref FieldDescriptors[0],
281281
out ValuesLength, out ObjectsLength);
282282
break;

0 commit comments

Comments
 (0)