Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
fpc-src / usr / share / fpcsrc / 3.2.0 / tests / test / trtti12.pp
Size: Mime:
program trtti12;

{$MODE DELPHI}

uses
  TypInfo;

type
  PFoo = ^TFoo;
  TFoo = packed record
  public
    B: Byte;
    W: Word;
    L: LongWord;
    S: string;
    I: IInterface;
    A: TArray<byte>;
  end;

var
  td: PTypeData;
  id: PRecInitData;
begin
  td := GetTypeData(TypeInfo(TFoo));

  id := td.RecInitData;
  if id.Terminator <> nil then
    Halt(1);

  if td.TotalFieldCount <> 6 then
    Halt(2);

  if id.ManagedFieldCount <> 3 then
    Halt(3);
end.