Skip to content

Commit

Permalink
reorganzing files [skip ci]
Browse files Browse the repository at this point in the history
  • Loading branch information
leogdion committed Oct 14, 2024
1 parent d450301 commit e4bed5d
Show file tree
Hide file tree
Showing 25 changed files with 16 additions and 22 deletions.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -42,15 +42,8 @@
}
}

private struct DatabaseKey: EnvironmentKey {
static var defaultValue: any Database { DefaultDatabase.instance }
}

extension EnvironmentValues {
public var database: any Database {
get { self[DatabaseKey.self] }
set { self[DatabaseKey.self] = newValue }
}
@Entry public var database: any Database = DefaultDatabase.instance
}

extension Scene {
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -32,16 +32,7 @@

public import SwiftUI

private struct DatabaseChangePublicistKey: EnvironmentKey {
typealias Value = DatabaseChangePublicist

nonisolated static let defaultValue: DatabaseChangePublicist = .never()
}

extension EnvironmentValues {
public var databaseChangePublicist: DatabaseChangePublicist {
get { self[DatabaseChangePublicistKey.self] }
set { self[DatabaseChangePublicistKey.self] = newValue }
}
@Entry public var databaseChangePublicist: DatabaseChangePublicist = .never()
}
#endif
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@

self.fetchLimit = fetchLimit
}

@available(*, deprecated)
public init(model: Model<T>) {
let persistentIdentifier = model.persistentIdentifier
self.init(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
public import SwiftData

extension ModelContext {
@available(*, deprecated)
public func delete<T: PersistentModel>(_: T.Type, withID id: PersistentIdentifier) -> Bool {
guard let model: T = self.registeredModel(for: id) else {
return false
Expand All @@ -51,13 +52,16 @@
self.insert(model)
return model.persistentModelID
}

public func fetch<T, U>(
_ selectDescriptor: @escaping @Sendable () -> FetchDescriptor<T>,
with closure: @escaping @Sendable ([T]) throws -> U
) throws -> U where T: PersistentModel, U: Sendable {
let models = try self.fetch(selectDescriptor())
return try closure(models)
}

@available(*, deprecated)
public func fetch<T: PersistentModel, U: PersistentModel, V: Sendable>(
_ selectDescriptorA: @escaping @Sendable () -> FetchDescriptor<T>,
_ selectDescriptorB: @escaping @Sendable () -> FetchDescriptor<U>,
Expand All @@ -68,13 +72,15 @@
return try closure(firstModels, secondModels)
}

@available(*, deprecated)
public func get<T, U>(
for objectID: PersistentIdentifier, with closure: @escaping @Sendable (T?) throws -> U
) throws -> U where T: PersistentModel, U: Sendable {
let model: T? = try self.existingModel(for: objectID)
return try closure(model)
}


@available(*, deprecated)
public func transaction(block: @escaping @Sendable (ModelContext) throws -> Void) throws {
try self.transaction { try block(self) }
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,11 @@

#if canImport(SwiftData)
import Foundation
public import SwiftData
import SwiftData

extension ModelContext {
public func existingModel<T>(for objectID: PersistentIdentifier) throws -> T?

internal func existingModel<T>(for objectID: PersistentIdentifier) throws -> T?
where T: PersistentModel {
if let registered: T = registeredModel(for: objectID) {
return registered
Expand All @@ -42,7 +43,8 @@
}

let fetchDescriptor = FetchDescriptor<T>(
predicate: #Predicate { $0.persistentModelID == objectID }
predicate: #Predicate { $0.persistentModelID == objectID },
fetchLimit: 1
)

return try fetch(fetchDescriptor).first
Expand Down

0 comments on commit e4bed5d

Please sign in to comment.