Skip to content

Commit 8453ec8

Browse files
committed
Revert Linux optimisation
1 parent 6c0a2f5 commit 8453ec8

File tree

1 file changed

+14
-16
lines changed

1 file changed

+14
-16
lines changed

Sources/trailer/Core/Dates.swift

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,22 @@
66
//
77

88
import Foundation
9-
#if os(Linux)
10-
import Glibc
11-
#endif
129

1310
struct GHDateFormatter {
14-
#if os(Windows)
11+
#if os(OSX)
12+
private static var timeData = tm()
13+
private static var dateParserHolder = " +0000".cString(using: String.Encoding.ascii)!
14+
static func parseGH8601(_ iso8601: String?) -> Date? {
15+
guard let i = iso8601, i.count > 18 else { return nil }
16+
17+
memcpy(&dateParserHolder, i, 19)
18+
strptime(dateParserHolder, "%FT%T%z", &timeData)
19+
20+
let t = mktime(&timeData)
21+
return Date(timeIntervalSince1970: TimeInterval(t))
22+
}
23+
24+
#elseif os(Linux) || os(Windows)
1525
private static let formatter: DateFormatter = {
1626
let d = DateFormatter()
1727
d.timeZone = TimeZone(secondsFromGMT: 0)
@@ -24,18 +34,6 @@ struct GHDateFormatter {
2434
guard let i = iso8601 else { return nil }
2535
return formatter.date(from: i)
2636
}
27-
#else
28-
private static var timeData = tm()
29-
private static var dateParserHolder = " +0000".cString(using: .ascii)!
30-
static func parseGH8601(_ iso8601: String?) -> Date? {
31-
guard let i = iso8601, i.count > 18 else { return nil }
32-
33-
memcpy(&dateParserHolder, i, 19)
34-
strptime(dateParserHolder, "%FT%T%z", &timeData)
35-
36-
let t = mktime(&timeData)
37-
return Date(timeIntervalSince1970: TimeInterval(t))
38-
}
3937
#endif
4038
}
4139

0 commit comments

Comments
 (0)