Add some overloads with 1 less allocation

kinda splitting hairs but whatever
This commit is contained in:
Kurt 2020-07-19 16:35:52 -05:00
parent 9f20aa2f4f
commit 9c99e7ab7b

View File

@ -184,5 +184,24 @@ internal static T[] ConcatAll<T>(params T[][] arr)
return result;
}
internal static T[] ConcatAll<T>(T[] arr1, T[] arr2)
{
int len = arr1.Length + arr2.Length;
var result = new T[len];
arr1.CopyTo(result, 0);
arr2.CopyTo(result, arr1.Length);
return result;
}
internal static T[] ConcatAll<T>(T[] arr1, T[] arr2, T[] arr3)
{
int len = arr1.Length + arr2.Length + arr3.Length;
var result = new T[len];
arr1.CopyTo(result, 0);
arr2.CopyTo(result, arr1.Length);
arr3.CopyTo(result, arr1.Length + arr2.Length);
return result;
}
}
}