migration utilities (beta), swift 2 conversion

This commit is contained in:
John Rommel Estropia
2015-07-07 08:03:46 +09:00
parent bf0eebe057
commit 5b85b0749e
59 changed files with 1319 additions and 733 deletions

View File

@@ -42,7 +42,11 @@ public struct MigrationChain: NilLiteralConvertible, StringLiteralConvertible, D
public func nextVersionFrom(version: String) -> String? {
return self.versionTree[version]
if let nextVersion = self.versionTree[version] where nextVersion != version {
return nextVersion
}
return nil
}
@@ -65,6 +69,7 @@ public struct MigrationChain: NilLiteralConvertible, StringLiteralConvertible, D
self.leafVersions = [value]
}
// MARK: ExtendedGraphemeClusterLiteralConvertible
public init(extendedGraphemeClusterLiteral value: String) {
@@ -126,8 +131,8 @@ public struct MigrationChain: NilLiteralConvertible, StringLiteralConvertible, D
}
self.versionTree = versionTree
self.rootVersions = Set(flatMap([elements.first]) { $0 == nil ? [] : [$0!] })
self.leafVersions = Set(flatMap([elements.last]) { $0 == nil ? [] : [$0!] })
self.rootVersions = Set([elements.first].flatMap { $0 == nil ? [] : [$0!] })
self.leafVersions = Set([elements.last].flatMap { $0 == nil ? [] : [$0!] })
}