Имам клас MyClass, който не е общ и съдържа и прави нещо с произволен TList. Искам да заменя TList с общия TList, но MyClass трябва да остане негенеричен. Тъй като Delphi е инвариантен, нещо подобно не работи:
list1: TList<TObject>
list2: TList<MyType> //MyType extends TObject
[...]
list1 := list2
Освен това изглежда няма негенеричен суперклас на TList, а само IEnumerable.
Има ли начин да декларирате заместител/заместващ знак за TList с произволен T?