假设我有这样的代码:
A* a = [[A alloc] init];
B* _Null_unspecified b = [[B alloc] init];
C* _Nullable c = [[C alloc] init];
D* _Nonnull d = [[D alloc] init];
现在,我想创建一个匹配变量声明的匹配器。
目前我有这样的事情:
StatementMatcher NullUnspecifiedMatcher =
declStmt(hasSingleDecl(varDecl(hasType(objcObjectPointerType()))))`
有objcObjectPointerType()
但它只与a
匹配。有一些指针/参考匹配器,但它们根本不会处理那些变量声明。此外,我尝试isAnyPointer()
,但它适用于任何指针,obj-c或不。
我尝试type()
以确保我能正确地完成所有事情,并且确实有效。
那么,我怎样才能匹配obj-c变量声明,有或没有nullability说明符?
谢谢!