Skip to content

Commit

Permalink
Merge pull request #78 from cdzombak/cdz/separate-protocols
Browse files Browse the repository at this point in the history
Minor reorganizations in YapDatabaseExtensions.swift
  • Loading branch information
danthorpe committed Jan 27, 2016
2 parents f9da744 + 61564fa commit 3fd6b52
Showing 1 changed file with 24 additions and 20 deletions.
44 changes: 24 additions & 20 deletions YapDatabaseExtensions/Shared/YapDatabaseExtensions.swift
Expand Up @@ -252,6 +252,18 @@ extension Persistable {
}
}

// MARK: Functions

public func keyForPersistable<P: Persistable>(persistable: P) -> String {
return persistable.key
}

public func indexForPersistable<P: Persistable>(persistable: P) -> YapDB.Index {
return persistable.index
}

// MARK: -

/// A facade interface for a read transaction.
public protocol ReadTransactionType {

Expand Down Expand Up @@ -555,14 +567,11 @@ extension YapDatabase: DatabaseType {
}
}

// MARK: - YapDB.Index

// MARK: Hashable etc

extension YapDB.Index: CustomStringConvertible, Hashable {
// MARK: Hashable & Equality

public var description: String {
return "\(collection):\(key)"
}
extension YapDB.Index: Hashable {

public var hashValue: Int {
return description.hashValue
Expand All @@ -573,6 +582,15 @@ public func == (a: YapDB.Index, b: YapDB.Index) -> Bool {
return (a.collection == b.collection) && (a.key == b.key)
}

// MARK: CustomStringConvertible

extension YapDB.Index: CustomStringConvertible {

public var description: String {
return "\(collection):\(key)"
}
}

// MARK: ValueCoding

extension YapDB.Index: ValueCoding {
Expand Down Expand Up @@ -600,20 +618,6 @@ public final class YapDBIndexCoder: NSObject, NSCoding, CodingType {
}
}





// MARK: - Functions

public func keyForPersistable<P: Persistable>(persistable: P) -> String {
return persistable.key
}

public func indexForPersistable<P: Persistable>(persistable: P) -> YapDB.Index {
return persistable.index
}

// MARK: - Deprecations

@available(*, unavailable, renamed="Persistable")
Expand Down

0 comments on commit 3fd6b52

Please sign in to comment.