我的团队从一个代理机构继承了一个庞大的,不守规矩的iOS代码库,我们正在尝试使用一些自动化技巧来重构它。我们面临的一个奇怪的决定就是这样的事情(数以千计):
UIImage *result = nil;
UIGraphicsBeginImageContextWithOptions(size, opaque, scale);
{
block(UIGraphicsGetCurrentContext());
result = UIGraphicsGetImageFromCurrentImageContext();
}
UIGraphicsEndImageContext();
return result;
我在谈论牙箍,可以说没有任何理由。我渴望做的是找到一种方法来删除它们。
我想知道我是否能找到一些聪明的方法来删除这些冗余的括号,并重新缩进其中的代码,而不会触及其他使用花括号的东西。
AppCode的重构工具没有帮助,虽然一个简单的查找和替换可以用于开放的大括号,但它会找到结束语的每个if语句的结尾。
难题。有任何想法吗?多行正则表达式,Xcode甚至可以这样做吗? AppCode可以吗?我需要自动将它应用于整个项目,无论它是什么。