Warum TConnectionListe nicht von TList, TList<TConnection>, TDirectory<xxx,TConnection> oder Dergleichen erben lassen?
Wie die Syntax der Generics in Lazarus FreePascal ist, weiß ich nicht, aber sowas gibt es dort ja auch.
Das war auch mein erster Gedanke, aber Du weißt Dich besser auszudrücken.