Topic: To learn successor TList <>

Whether it is possible to learn somehow, what the transferred object is a copy of a class or successor TList &lt;T&gt;?
If to specify specific type

Obj: = TList &lt;Integer&gt;.Create;
if Obj is TList &lt;Integer&gt; then

that all defines. And me to learn for the arbitrary type

if Obj is TList &lt;&gt; then

the Task dares?
Yours faithfully, Vasilisk


Re: To learn successor TList <>

_Vasilisk _;
Here there is one problem which consists in that that class TList &lt;T&gt; as that, does not exist. There are classes TList &lt;Integer&gt;, TList &lt;Byte&gt;, etc. which form at their first usage. I.e. in the operator is the copy could not be compared.
As a variant I see such perversion:

if Pos (' TLIST &lt;', AnsiUpperCase (List. ClassName)) = 1 then

But here there can be nuances: for example, if in the project is a little TList &lt;&gt;, declared in different units - thus it does not turn out to distinguish them from each other.


Re: To learn successor TList <>

And for the successor there generally .


Re: To learn successor TList <>

I considered this variant. All dares. Both different classes and successors. It would not be desirable to communicate with lines


Re: To learn successor TList <>

_Vasilisk _;

List: = TList &lt;Integer&gt;.Create;
WriteLn (List. ClassName);
WriteLn (List. ClassParent. ClassName);
WriteLn (List. ClassParent. ClassParent. ClassName);

[quote =]

 TList &lt;System. Integer&gt;
TEnumerable &lt;System. Integer&gt;

I do not see other variants...