В С# я могу определить метод расширения для общего массива типа T следующим образом:
public static T GetOrDefault<T>(this T[] arr, int n)
{
if (arr.Length > n)
{
return arr[n];
}
return default(T);
}
но для жизни меня не могу понять, как сделать то же самое в F #! Я пробовал type 'a array with
, type array<'a> with
и type 'a[] with
, и компилятор не был доволен ни одним из них.
Может ли кто-нибудь сказать мне, что право делать это в F #?
Конечно, я могу сделать это, затмив модуль Array и добавить функцию для этого достаточно легко, но я действительно хочу знать, как это сделать как метод расширения!