Wiki copymirror

This is a mirror of the wiki at pascal.chat. Editing, history and sign-in are there.

Runtime Type Information (RTTI)

English · Français · Русский

Runtime Type Information RTTI can be utilized to obtain meta information in a Pascal application.

Converting a enumerated type to a string

One can use RTTI to obtain a string from a enumerated type.

pascal
uses TypInfo; 

type
  TProgrammerType = (tpDelphi, tpVisualC, tpVB, tpJava) ;

var 
  s: string;
begin
  s := GetEnumName(TypeInfo(TProgrammerType), integer(tpDelphi));
  // Here s = 'tpDelphi'
  WriteLn(s)
end.

But you can also do it without RTTI:

pascal
program noRTTI;
type
  TProgrammerType = (tpDelphi, tpVisualC, tpVB, tpJava) ; 
var 
  s: string;
begin
  writestr(s, tpDelphi);
  WriteLn(s);
end.

See Also


From the Free Pascal wiki, page "Runtime Type Information (RTTI)", as it stood on 2020-02-25 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Revision 1, last changed by WikiArchive .