Structify旨在让你更轻松将Swift结构转换为Objective-C类,开发者无需手动将结构转换为类,反之亦然。
不使用StructifystructUser{letaddress:Strigletcompay:Strigletemail:Strigletame:Strigletphoe:Strigletuid:Strigletuserame:Strigletwebsite:Strigletbirthday:Date}classRLMUser:Object{@objcdyamicvaraddress:Strig=""@objcdyamicvarcompay:Strig=""@objcdyamicvaremail:Strig=""@objcdyamicvarame:Strig=""@objcdyamicvarphoe:Strig=""@objcdyamicvaruid:Strig=""@objcdyamicvaruserame:Strig=""@objcdyamicvarwebsite:Strig=""@objcdyamicvarbirthday:Date=Date()overrideclassfucprimaryKey()->Strig?{retur"uid"}}extesioRLMUser{fuctoStruct()->User{returUser(address:address,compay:compay,email:email,ame:ame,phoe:phoe,uid:uid,userame:userame,website:website,birthday:birthday)}}extesioUser{fuctoObject()->RLMUser{returRLMUser.build{objectiobject.uid=uidobject.address=addressobject.compay=compayobject.email=emailobject.ame=ameobject.phoe=phoeobject.userame=userameobject.website=websiteobject.birthday=birthday}}}乍一看似乎很方便的方法。但是如果你的结构不是那么小并且有更多的属性呢?如果你有太多类似User这样的结构时怎么办?如果您想在开发过程中为现有结构添加更多属性怎么办?使用 StructifystructUser{varaddress:Strig=""varcompay:Strig=""varemail:Strig=""varame:Strig=""varphoe:Strig=""varuid:Strig=""varuserame:Strig=""varwebsite:Strig=""varbirthday:Date=Date()}classRLMUser:Object{//youolysettheprimaryKeyasusualoverrideclassfucprimaryKey()->Strig?{retur"uid"}}extesioRLMUser:StructCovertible{typealiasStructType=User}extesioUser:ObjectCovertible{typealiasClassType=RLMUser}你唯一需要做的就是让你的结构符合ObjectCovertible协议并创建一个Objective-C对类并符合StructCovertible协议。要求iOS8.0+Xcode10.+Swift4.2+安装Structify可通过 CocoaPods获得。要安装它,只需将以下行添加到您的Podfile中:pod'Structify'










评论