Skip to content

Commit 33abf9c

Browse files
authored
Make RecurrenceRule and its friends conform to Hashable (swiftlang#995)
As agreed in SF-0010. Resolves rdar://136704624
1 parent dfb4186 commit 33abf9c

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

Sources/FoundationEssentials/Calendar/RecurrenceRule.swift

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ extension Calendar {
109109
public var interval: Int
110110
/// When a recurring event stops recurring
111111
public struct End: Sendable, Equatable {
112-
private enum _End: Equatable {
112+
private enum _End: Equatable, Hashable {
113113
case never
114114
case afterDate(Date)
115115
case afterOccurrences(Int)
@@ -449,7 +449,7 @@ extension Calendar.RecurrenceRule: Codable {
449449
}
450450

451451
@available(FoundationPreview 6.0.2, *)
452-
extension Calendar.RecurrenceRule.End: CustomStringConvertible {
452+
extension Calendar.RecurrenceRule.End: CustomStringConvertible, Hashable {
453453
public var description: String {
454454
switch self._guts {
455455
case .never: "Never"
@@ -458,3 +458,9 @@ extension Calendar.RecurrenceRule.End: CustomStringConvertible {
458458
}
459459
}
460460
}
461+
@available(FoundationPreview 6.0.2, *)
462+
extension Calendar.RecurrenceRule.Month: Hashable { }
463+
@available(FoundationPreview 6.0.2, *)
464+
extension Calendar.RecurrenceRule.Weekday: Hashable { }
465+
@available(FoundationPreview 6.0.2, *)
466+
extension Calendar.RecurrenceRule: Hashable { }

0 commit comments

Comments
 (0)