RHBCastingObjC 0.1.6

RHBCastingObjC 0.1.6

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2016年8月

Lazar Otasevic 维护。



用法

这个小型库会在处理类型转换时使您的代码更安全、更易于阅读。对于 Swift 来说,不需要这种库,因为 Swift 默认就要求您编写安全且易于阅读的类型转换代码。

示例1

这样,您不必像以下这样做

if ([self.collection isKindOfClass:[NSArray class]]) {
    NSArray *array = (NSArray *)self.collection;
    /// ... some other code

此库允许您执行以下操作

NSArray *array = [NSArray rhb_dynamicCast:self.collection];
if (array) {
    /// ... some other code

请注意,使用标准方法时,"self.collection" 实际上是重复代码,如果它即时创建,可能会影响性能。

方法 rhb_dynamicCast: 内部使用 isKindOfClass:。还有一个名为 rhb_strictDynamicCast: 的方法,它内部使用 isMemberOfClass:

示例2

要开发过程中的附加安全检查(断言),则应使用以下方法

NSArray *array = [NSArray rhb_verifyCast:self.collection];

而不是标准方式

NSArray *array = (NSArray *)self.collection;

第一种方式将在调试模式下进行断言并检查类型转换是否有效,以防止开发过程中的错误。两种方式在发布模式下会产生相同的效果。

安装

RHBCastingObjC 可通过 CocoaPods 获得。要安装它,请简单地在您的 Podfile 中添加以下行:

pod "RHBCastingObjC"

作者

Lazar Otasevic, [email protected]

许可证

RHBCastingObjC 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。