Files
Morgan Pretty f1075e9123 Started adding logic and unit tests for group creation
Reworked the config store to better support different types of config objects
Added the logic to create a group (not final just yet)
2023-08-31 10:35:03 +10:00

18 lines
445 B
Swift

// Copyright © 2023 Rangeproof Pty Ltd. All rights reserved.
import Foundation
public extension Collection {
subscript(test index: Index) -> Element? {
return (indices.contains(index) ? self[index] : nil)
}
}
public extension Array {
func allCombinations() -> [[Element]] {
guard !isEmpty else { return [[]] }
return Array(self[1...]).allCombinations().flatMap { [$0, ([self[0]] + $0)] }
}
}