У меня есть универсальная функция, в которой компилятор легко выдает неверные параметры типа. Параметры типа управляют только возвращаемым типом, и если я случайно пропущу аннотацию типа, компилятор выведет obj
.
Как я могу сделать вызов моей функции ошибкой времени компиляции, не давая ей явных параметров типа? Функция Unchecked.defaultof
работает так, как мне хотелось бы:
> Unchecked.defaultof;;
Unchecked.defaultof;;
^^^^^^^^^^^^^^^^^^^
stdin(1,1): error FS0685: The generic function 'defaultof' must be given explicit type argument(s)