我正在尝试在我的一个项目中使用 Uncrustify,但是当宏用作 Objective-C 消息的接收器时,我遇到了一些间距更改问题。例如,给定以下宏和方法调用,我希望间距保持原样。
#define NilOrNotNSNull(val) ({id __val = (val); (__val == [NSNull null]) ? nil : __val;})
title_ = [NilOrNotNSNull([dict objectForKey:@"post_title"]) copy];
然而,这就是结果。
#define NilOrNotNSNull(val) ({id __val = (val); (__val == [NSNull null]) ? nil : __val;})
title_ = [NilOrNotNSNull ([dict objectForKey:@"post_title"])copy];
似乎 Uncrustify 无法识别括号中的文本是宏的参数,但是我不确定它到底认为它是什么。这对我来说似乎是一个 Uncrustify 错误,但它可能是我的配置的问题,所以我想我会在这里问以及在 GitHub 上提交问题。这是我正在使用的配置:https ://gist.github.com/812314
如果有人可以提供一些见解,我将不胜感激。