Allow any returns in native callbacks (#857)

This commit is contained in:
Michael Flaherty 2018-07-25 21:46:44 -07:00 committed by GitHub
parent 7d8dfb09d8
commit 11abe77eed
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 12 deletions

View File

@ -162,9 +162,9 @@ public void DefaultCategoryHandler(TopMenu topmenu,
}
}
public int __GetAdminTopMenu(Handle plugin, int numParams)
public any __GetAdminTopMenu(Handle plugin, int numParams)
{
return view_as<int>(hAdminMenu);
return hAdminMenu;
}
public int __AddTargetsToMenu(Handle plugin, int numParams)

View File

@ -357,7 +357,9 @@ native int Call_Finish(any &result=0);
*/
native void Call_Cancel();
/**
typeset NativeCall
{
/**
* Defines a native function.
*
* It is not necessary to validate the parameter count
@ -366,7 +368,19 @@ native void Call_Cancel();
* @param numParams Number of parameters passed to the native.
* @return Value for the native call to return.
*/
typedef NativeCall = function int (Handle plugin, int numParams);
function int (Handle plugin, int numParams);
/**
* Defines a native function.
*
* It is not necessary to validate the parameter count
*
* @param plugin Handle of the calling plugin.
* @param numParams Number of parameters passed to the native.
* @return Value for the native call to return.
*/
function any (Handle plugin, int numParams);
}
/**
* Creates a dynamic native. This should only be called in AskPluginLoad(), or