mirror of
https://github.com/lux-tel/session-ios.git
synced 2026-10-30 20:38:32 +00:00
Reworked the config store to better support different types of config objects Added the logic to create a group (not final just yet)
18 lines
445 B
Swift
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)] }
|
|
}
|
|
}
|