是否可能使Xcode发出类似以下代码的警告:
// Model.h
@interface Model : NSObject
@property (strong, nonatomic, nullable) NSString *value;
@end
// Model.m
@implementation Model
@end
// ViewController.m
@implementation ViewController
- (void)test {
NSMutableArray<NSString *> *values = [NSMutableArray array];
Model *model = [Model new];
[values addObject:model.value];
}
@end
?
答案 0 :(得分:0)
不,在Objective-C中是不可能的。
这不是实际的警告,但是静态分析器会在确定确实为nil
的情况下进行选择,例如:
NSMutableArray *array = NSMutableArray.array;
NSString *string = nil;
[array addObject:string]; // Argument to 'NSMutableArray' method 'addObject:' cannot be nil