diff options
| author | Fuwn <[email protected]> | 2025-09-03 22:28:08 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-09-03 22:28:08 -0700 |
| commit | e42ace815c0e33e90a6e576942d7905f01a314dd (patch) | |
| tree | 4e3a8b15e6e2ebfb5436014660c990a57350e069 /Sora/Data/Danbooru/DanbooruPostParser.swift | |
| parent | feat: Development commit (diff) | |
| download | sora-testing-e42ace815c0e33e90a6e576942d7905f01a314dd.tar.xz sora-testing-e42ace815c0e33e90a6e576942d7905f01a314dd.zip | |
feat: Development commit
Diffstat (limited to 'Sora/Data/Danbooru/DanbooruPostParser.swift')
| -rw-r--r-- | Sora/Data/Danbooru/DanbooruPostParser.swift | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/Sora/Data/Danbooru/DanbooruPostParser.swift b/Sora/Data/Danbooru/DanbooruPostParser.swift index 73db0cc..f990ed5 100644 --- a/Sora/Data/Danbooru/DanbooruPostParser.swift +++ b/Sora/Data/Danbooru/DanbooruPostParser.swift @@ -1,6 +1,6 @@ import Foundation -class DanbooruPostParser { +nonisolated class DanbooruPostParser { private let data: Data init(data: Data) { @@ -25,20 +25,28 @@ class DanbooruPostParser { } } - private static func parseDate(_ input: String) -> Date? { - let isoFormatter = ISO8601DateFormatter() + nonisolated(unsafe) private static let isoFormatter: ISO8601DateFormatter = { + let formatter = ISO8601DateFormatter() + + formatter.formatOptions = [.withInternetDateTime, .withFractionalSeconds] + + return formatter + }() + + private static let alternativeFormatter: DateFormatter = { + let formatter = DateFormatter() - isoFormatter.formatOptions = [.withInternetDateTime, .withFractionalSeconds] + formatter.dateFormat = "EEE MMM dd HH:mm:ss Z yyyy" + formatter.locale = Locale(identifier: "en_US_POSIX") + return formatter + }() + + private static func parseDate(_ input: String) -> Date? { if let date = isoFormatter.date(from: input) { return date } - let alternativeFormatter = DateFormatter() - - alternativeFormatter.dateFormat = "EEE MMM dd HH:mm:ss Z yyyy" - alternativeFormatter.locale = Locale(identifier: "en_US_POSIX") - if let date = alternativeFormatter.date(from: input) { return date } |