mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-09 13:08:49 +02:00
* Some corrections in GetInvokeNameFromTypeName
This commit is contained in:
parent
bd08aa6197
commit
90cac5536f
@ -540,14 +540,16 @@ function TWebIDLToPasWasmJob.GetInvokeNameFromAliasName(const aTypeName : TIDLSt
|
||||
var
|
||||
aLower : String;
|
||||
begin
|
||||
Writeln('Checking invoke for alias ',aTypeName,'(prefix : ',PasInterfacePrefix+')');
|
||||
aLower:=LowerCase(aTypeName);
|
||||
Writeln('Pos(LowerCase(',PasInterfacePrefix,'),',aLower,') := ',Pos(LowerCase(PasInterfacePrefix),aLower));
|
||||
if Pos('bool',aLower)>0 then
|
||||
Result:='InvokeJSBooleanResult'
|
||||
else if Pos('array',aLower)>0 then
|
||||
Result:='InvokeJSObjectResult'
|
||||
else if Pos('string',aLower)>0 then
|
||||
Result:='InvokeJSUnicodeStringResult'
|
||||
else if Pos(PasInterfacePrefix,aLower)=1 then
|
||||
else if Pos(LowerCase(PasInterfacePrefix),aLower)=1 then
|
||||
Result:='InvokeJSObjectResult'
|
||||
else
|
||||
Result:='';
|
||||
@ -584,12 +586,13 @@ begin
|
||||
else
|
||||
if (aType is TIDLTypeDefDefinition) then
|
||||
begin
|
||||
|
||||
if (TypeAliases.IndexOfName(aTypeName)<>-1) then
|
||||
Result:=GetInvokeNameFromAliasName(aTypeName,aType)
|
||||
else if (TypeAliases.IndexOfName((aType as TIDLTypeDefDefinition).TypeName)<>-1) then
|
||||
Result:=GetInvokeNameFromAliasName((aType as TIDLTypeDefDefinition).TypeName,aType)
|
||||
else if TypeAliases.IndexOfName(GetName(aType))<>-1 then
|
||||
Result:=GetInvokeNameFromAliasName(aTypeName,aType)
|
||||
Result:=GetInvokeNameFromAliasName(aTypeName,aType);
|
||||
if (Result='') and (TypeAliases.IndexOfName((aType as TIDLTypeDefDefinition).TypeName)<>-1) then
|
||||
Result:=GetInvokeNameFromAliasName((aType as TIDLTypeDefDefinition).TypeName,aType);
|
||||
if (Result='') and (TypeAliases.IndexOfName(GetName(aType))<>-1) then
|
||||
Result:=GetInvokeNameFromAliasName(GetName(aType),aType)
|
||||
else
|
||||
Result:='InvokeJSObjectResult';
|
||||
if Result='' then
|
||||
@ -641,8 +644,10 @@ begin
|
||||
else if aResultDef is TIDLTypeDefDefinition then
|
||||
begin
|
||||
aTypeName:=(aResultDef as TIDLTypeDefDefinition).TypeName;
|
||||
Writeln('Looking for alias ',aTypeName,' name ',aName,' in ',TypeAliases.Text);
|
||||
if TypeAliases.IndexOfName(aTypeName)=-1 then
|
||||
begin
|
||||
Msg:=GetName(aDef);
|
||||
Msg:='[20220725172242] not yet supported: function "'+Msg+'" return type: '+aName;
|
||||
if assigned(aDef) then
|
||||
Msg:=Msg+' at '+GetDefPos(aDef);
|
||||
|
Loading…
Reference in New Issue
Block a user