1.. title:: clang-tidy - objc-forbidden-subclassing 2 3objc-forbidden-subclassing 4========================== 5 6Finds Objective-C classes which are subclasses of classes which are not designed 7to be subclassed. 8 9By default, includes a list of Objective-C classes which are publicly documented 10as not supporting subclassing. 11 12.. note:: 13 14 Instead of using this check, for code under your control, you should add 15 ``__attribute__((objc_subclassing_restricted))`` before your ``@interface`` 16 declarations to ensure the compiler prevents others from subclassing your 17 Objective-C classes. 18 See https://clang.llvm.org/docs/AttributeReference.html#objc-subclassing-restricted 19 20Options 21------- 22 23.. option:: ForbiddenSuperClassNames 24 25 Semicolon-separated list of names of Objective-C classes which 26 do not support subclassing. 27 28 Defaults to `ABNewPersonViewController;ABPeoplePickerNavigationController;ABPersonViewController;ABUnknownPersonViewController;NSHashTable;NSMapTable;NSPointerArray;NSPointerFunctions;NSTimer;UIActionSheet;UIAlertView;UIImagePickerController;UITextInputMode;UIWebView`. 29