У меня есть протокол с именем P
, и я хочу написать функцию, которая бы возвращала экземпляр любого типа, соответствующий этому протоколу.
Я написал это:
func f<T: P>() -> T? {
// ...
}
Но потом, когда я пытаюсь это назвать:
var fp = f()
Я получаю эту ошибку: Generic parameter 'T' could not be inferred
. Что я делаю не так и как это решить?
Спасибо за вашу помощь.