Учитывая массив, определенный следующим образом:
let list: [Any]
Я хочу отсортировать его КОГДА
- все значения внутри него имеют один и тот же тип
Element
- И
Element
естьComparable
.
Когда он должен вернуть отсортированный массив
Поэтому мне понадобится функция, когда массив заполняется таким образом, как следующие
let list: [Any] = [10, 11, 0, 2, -1]
let list: [Any] = ["Red", "Green", "Blue"]
let list: [Any] = [true, false, true, true]
возвращает отсортированный массив.
Когда он должен вернуть nil
С другой стороны, когда list
содержит один из следующих примеров
let list: [Any] = [CGPointZero, CGPoint(x:1, y:1)] // CGPoint is not comparable
let list: [Any] = [10, "Hello"] // Values of different types
Я хочу nil
как возвращаемое значение.
Любая идея?