Может ли кто-нибудь увидеть свет на эту ошибку? Игровая площадка настаивает на том, что аргумент № 2 отсутствует, но нет аргумента # 1!Swift: Отсутствует аргумент в вызове безразмерного расширения SequenceOf
Цель кода подсчитать количество прогонов условного значения и вернуть последовательность кортежей, состоящую из значений и их счетчиков. Я много работал над этим кодом, оптимизируя его и дорабатывая, пока не уверен, что он должен работать ... но хотя он компилируется, я не могу назвать его так, как он был предназначен.
Ошибки я получаю от вызова кода ниже missing argument for parameter #2 in call
extension SequenceOf {
func CountRuns<T: Equatable>() -> SequenceOf<(T, Int)> {
return SequenceOf<(T, Int)>([])
return SequenceOf<(T, Int)> {() -> GeneratorOf<(T, Int)> in
var generator = self.generate()
var previousValue: T?
var start = true
return GeneratorOf<(T, Int)> {() -> (T, Int)? in
var count = 1
var retValue: (T, Int)?
while(true) {
var value = generator.next() as T?
if start {
previousValue = value
start = false
} else if value != nil && value! == previousValue! {
count++
} else {
if previousValue != nil {
retValue = (previousValue!, count)
}
previousValue = value
break
}
}
return retValue
}
}
}
}
println(SequenceOf(y).CountRuns())
Playground execution failed: <EXPR>:327:23: error: missing argument for parameter #2 in call
println(SequenceOf(y).CountRuns())
^
Хм ... это работает. Не то, что я хочу, хотя, как я хочу сделать цепочку. –