(vorrausgesetzt die entsprechenden Member sind dort aufgenommen, bei Feldern ist das standardmäßig der Fall, bei Methoden nicht)
In der "alten"
RTTI ist nur Published drin. Und ab TPersistent ist, wegen {$M+}, die Standardsichtbarkeit Published.
In der neuen/erweiterten
RTTI kann man global und typbezogen steuern, was an Feldern/Property/Methoden in der
RTTI drin steht ... von garnichts bis alles.
Das was in System angegeben ist, gilt für die Klassen, die ausgeliefert werden (außer du kompilierst den Source code neu - aber dann kannst nen Bug ja auch gleich dort fixen und musst dich da nicht rein hacken, gelle?
)
P.S. Es gibt keine "alte" und "neue"
RTTI. Es gibt nur "die"
RTTI - die wird vom Compiler generiert (und wurde über die Jahre erweitert) - es gibt nur 2 verschiedene Wege, diese auszulesen, mit den record/pointer basierten Strukturen aus TypInfo.pas (welche meist nur die published Sichtbarkeit berücksichtigt) oder mit der darauf aufsetzenden higher level
API aus
Rtti.pas.