You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-ios/SessionUtilitiesKit/Utilities/JSONDecoder+Utilities.swift

20 lines
476 B
Swift

// Copyright © 2023 Rangeproof Pty Ltd. All rights reserved.
import Foundation
public extension JSONDecoder {
convenience init(using dependencies: Dependencies = Dependencies()) {
self.init()
self.userInfo = [ Dependencies.userInfoKey: dependencies ]
}
}
public extension Decoder {
var dependencies: Dependencies {
(
(self.userInfo[Dependencies.userInfoKey] as? Dependencies) ??
Dependencies()
)
}
}