1234567891011121314151617181920212223242526272829303132333435363738394041 |
- import Foundation
- extension Array {
- func unique<T: Hashable>(map: ((Element) -> (T))) -> [Element] {
- var set = Set<T>()
- var arrayOrdered = [Element]()
- for value in self {
- if !set.contains(map(value)) {
- set.insert(map(value))
- arrayOrdered.append(value)
- }
- }
- return arrayOrdered
- }
- }
|