DataModelKit 1.1.0

DataModelKit 1.1.0

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2017年11月
SwiftSwift 版本4.0
SPM支持 SPM

Allan Vialatte 维护。



 
依赖于
SWXMLHash= 4.2.5
FileKit= 5.0.0
 

DataModelKit

Version
Carthage compatible
Platform
Build Status
Swift 4
codecov
License

DataModelKit 是一个简单且轻量级的框架,用于解析和读取 *.xcdatamodel 文件。它提供 API 以导航和探索 DataModel

它在 DataModelGen 工具中使用。(即将推出)

用法

初始化 DataModel 对象

import DataModelKit

static let path = "Project/Ressources/Sample.xcdatamodel"
let model = try? DataModel(with: DataModelKitTests.pathTest)

print(model.entities)

安装

EasyRealm 通过 CocoaPodsCarthageSPM 提供。

CocoaPods

use_frameworks!

pod "DataModelKit"

Carthage

github 'PoissonBallon/DataModelKit'

SPM

 dependencies: [
    .package(url: "https://github.com/PoissonBallon/DataModelKit.git", .upToNextMinor(from:"1.0.0"))
  ],

API

DataModelKit 提供了一些具有属性的结构,以exploite您的 DataModel

DataModel

它是您 DataModel 的根对象

public struct DataModel {  
  public let path: Struct   /// Path of the original file.xcdatamodel
  public let entities: [Entity] /// Parsed model's entities
  public let documentVersion: String /// Version of file.xcdatamodel
  public let systemVersion: String /// System version of file.xcdatamodel
  public let minimumToolsVersion: String /// Minimum tools version of file.xcdatamodel
  public let lastSavedToolsVersion: String /// Last saved tools version of file.xcdatamodel
}

实体

public struct Entity {
  public let name: String ///
  public let userInfos: [UserInfo]
  public let attributes: [Attribute]
  public let relationships: [Relationship]
}

关系

public struct Relationship {
  public let name: String
  public let destination: String
  public let inverse: String?
  public let userInfo: [UserInfo]
  public let toMany: Bool
  public let toOne: Bool
  public let optional: Bool
  public let syncable: Bool
  public let ordered: Bool
}

属性

public struct Attribute {
  public let name: String
  public let optional: Bool
  public let indexed: Bool
  public let defaultValue: String?
  public let type: String
  public let userInfos: [UserInfo]
}

作者

许可证

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

其他