TRttiContext = record function Create(): TRttiContext; static; procedure Free function GetType(ATypeInfo: Pointer): TRttiType; overload; function GetType(AClass: TClass): TRttiType; overload; function GetTypes(): TArray<Rtti.TRttiType>; function FindType(const AQualifiedName: string): TRttiType; function GetPackages(): TArray<Rtti.TRttiPackage>; end;
TRttiContext is the cornerstone of the Rtti unit.
Obtain and use the instance of TRttiContext to access type information for all public types in an application and associated packages. Only one instance of TRttiContext is actually created in your application.
TRttiContext exposes methods and properties that allow obtaining TRttiObject instances that represent different RTTI information. All the TRttiObject instances are cached internally and freed when the application terminates.