Die Erweiterung von Records durch Methoden z.b. In denen baust Du dann dein JSON zusammen. Ist natürlich nur eine Einmal-Lösung, da Records keine Vererbung unterstützen.
Delphi-Quellcode:
TRec3 = record
xyz: Integer;
abc: boolean;
function ToJSON : string;
end;
TArr1 = Array [1 .. 5] of TRec3;
TRecord2 = record
int1: Integer;
str3: String;
function ToJSON : string;
end;
TRecord = record
str1: String;
rec2: TRecord2;
arr1: TArr1;
function ToJSON : string;
end;