in 2021.2/CSharp20212/CodeAnalysis/SwapViaDeconstruction.cs [12:21]
public static void ReverseContents<T>(this T[] array, int start, int count)
{
int end = start + count + 1;
for (int i = 0, j = end; i < j; i++, j--)
{
T temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}