In Objective-C ist es möglich, eine Klasse, die einem Protokoll entspricht, als Methodenparameter anzugeben. Zum Beispiel könnte ich eine Methode haben, die nur eine erlaubt UIViewController, die konform ist mit UITableViewDataSource:
- (void)foo:(UIViewController<UITableViewDataSource> *)vc;
Ich kann in Swift keinen Weg finden, dies zu tun (vielleicht ist es noch nicht möglich). Sie können mehrere Protokolle mit angeben func foo(obj: protocol<P1, P2>), aber wie benötigen Sie, dass das Objekt auch einer bestimmten Klasse angehört?