Tipo de instância de retorno em Swift
Estou tentando fazer esta extensão:
extension UIViewController
{
class func initialize(storyboardName: String, storyboardId: String) -> Self
{
let storyboad = UIStoryboard(name: storyboardName, bundle: nil)
let controller = storyboad.instantiateViewControllerWithIdentifier(storyboardId) as! Self
return controller
}
}
Mas eu recebo o erro de compilação:
erro: não é possível converter a expressão de retorno do tipo 'UIViewController' para retornar o tipo 'Self'
É possível? Também quero fazê-lo comoinit(storyboardName: String, storyboardId: String)