We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent ef3065f commit 045721bCopy full SHA for 045721b
ArrayExtensions.swift
@@ -0,0 +1,16 @@
1
+public extension Sequence where Iterator.Element: Hashable {
2
+ func unique() -> [Iterator.Element] {
3
+ return Array(Set(self))
4
+ }
5
+}
6
+
7
+public extension Sequence {
8
+ func categorise<U : Hashable>(_ key: (Iterator.Element) -> U) -> [U:[Iterator.Element]] {
9
+ var dict: [U:[Iterator.Element]] = [:]
10
+ for el in self {
11
+ let key = key(el)
12
+ if case nil = dict[key]?.append(el) { dict[key] = [el] }
13
14
+ return dict
15
16
0 commit comments