Я пытаюсь сделать такое.
static var recycle: [Type: [CellThing]] = []
но - я не могу:)
Необъявленный тип 'Тип'
В этом примере CellThing - мой базовый класс, поэтому A:CellThing, B:CellThing, C:CellThing и так далее. Идея в том, что я буду хранить различные A A, B B, C C C C в массивах словарей.
Как создать "Тип" (в идеале, я полагаю, ограниченным для CellThing) будет ключом в словаре Swift?
Я ценю, что могу (возможно?) использовать String(describing: T.self), но это заставит меня потерять сон.
Здесь пример использования, предполагаемый код будет выглядеть примерно так...
@discardableResult class func make(...)->Self {
  return makeHelper(...)
  }
private class func makeHelper<T: CellThing>(...)->T {
  let c = instantiateViewController(...) as! T
  return c
  }
Итак, что-то вроде...
static var recycle: [Type: [CellThing]] = []
private class func makeHelper<T: CellThing>(...)->T {
  let c = instantiateViewController(...) as! T
  let t = type whatever of c (so, maybe "A" or "B")
  recycle[t].append( c )
  let k = recycle[t].count
  print wow, you have k of those already!
  return c
  }
