pastojs: fixed IsTGUID

git-svn-id: trunk@48859 -
This commit is contained in:
Mattias Gaertner 2021-03-01 21:25:46 +00:00
parent 4ed82dcc1c
commit 9e5ff2186b

View File

@ -6877,20 +6877,22 @@ function TPas2JSResolver.IsTGUID(TypeEl: TPasRecordType): boolean;
var var
Members: TFPList; Members: TFPList;
El: TPasElement; El: TPasElement;
MemberIndex, i: Integer;
begin begin
Result:=false; Result:=false;
if not SameText(TypeEl.Name,'TGUID') then exit; if not SameText(TypeEl.Name,'TGUID') then exit;
Members:=TypeEl.Members; Members:=TypeEl.Members;
if Members.Count<4 then exit; i:=1;
El:=TPasElement(Members[0]); for MemberIndex:=0 to Members.Count-1 do
if not SameText(El.Name,'D1') then exit; begin
El:=TPasElement(Members[1]); El:=TPasElement(Members[MemberIndex]);
if not SameText(El.Name,'D2') then exit; if (El.ClassType<>TPasVariable) then continue;
El:=TPasElement(Members[2]); if SameText(El.Name,'D'+IntToStr(i)) then
if not SameText(El.Name,'D3') then exit; begin
El:=TPasElement(Members[3]); if i=4 then exit(true);
if not SameText(El.Name,'D4') then exit; inc(i);
Result:=true; end;
end;
end; end;
function TPas2JSResolver.GetAssignGUIDString(TypeEl: TPasRecordType; function TPas2JSResolver.GetAssignGUIDString(TypeEl: TPasRecordType;