Hi, I defined some concrete classes inheriting from a generic class like this:
class Controller1: NSFetchedResultsController<NSManagedObject> {} class Controller2: NSFetchedResultsController<NSManagedObject> {} And I assign them a shared delegate, and in the delegate method: func controllerWillChangeContent(_ controller: NSFetchedResultsController<NSFetchRequestResult>) I want to test the concrete type of controller, doing things differently for Controller1 and Controller2. But doing the following gives me a warning: Cast from 'NSFetchedResultsController<NSFetchRequestResult>' to unrelated type 'Controller1’ always fails switch controller { case is Controller1: // ... default: break } I wonder what’s the correct way to check the concrete type? Regards, Glen _______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users