Sign in Join
Wiki copytemporary

Revision 1 of 1, by Trev on 2-25-2020. The page as it is now.

Runtime Type Information (RTTI)

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.