This documentation was styled with a demo skin from the Premium Pack 4 add-on for Help & Manual. The contents of the skin are encrypted and not configurable. You can only publish HM projects with this skin. You cannot edit it or change it.
This version is copyright and may only be used for local testing purposes. It may not be distributed.
Please purchase the full version of the Premium Pack to get the configurable skins and remove this notice. The package will also include the Toolbox configuration utility for Premium Pack skins.
Description
Executes a function or dynamically execute a function name or a command name if dynamically passed by a string expression.
Syntax
Call FunctionName[(Arguments)] [TO Variable]
Returns
Parameters
Name |
Type |
Optional |
Meaning |
Variable |
Yes |
Any variable to which it is possible to assign a value |
Remarks
FunctionName is the name of the function to be executed.
If FunctionName starts with a quoted string or with a string variable, CALL will try to valuate FunctionName as a string expression.
A script function with the name of the string expression will be searched and if present, executed.
If no script function will be found, a language command will be searched and if present, executed.
If FunctionName evaluates to a number, CALL will consider it as a function pointer and will try to valuate call it directly.
Restrictions
See also
Examples
'--------------------------------------------------------------------------
'---EXAMPLE 1: script function
'--------------------------------------------------------------------------
Dim s As String = "m15,3ds,txt"
Dim n As Long
Dim Result As Long
n = 1
'---CALL will call function whose name is 'My3DSLOADER'
Call "My" + PARSE$(s,",",2)+"LOADER" ( n, s) To Result
MSGBOX 0, n & $CRLF & Result
Function My3DSLoader( ByRef x As Long, ByVal t As String ) As Long
MSGBOX 0, t & "<< there should be a string"
x = x * 2
Function = X * 10
End Function
'--------------------------------------------------------------------------
'--------------------------------------------------------------------------
'---EXAMPLE 2: language command
'--------------------------------------------------------------------------
Dim MyCmd As String
Dim MyStr As String
Dim MyNum As EXT
MyCmd = "mid$"
Call MyCmd ("abcdefgh", 3, 2) To Mystr
MSGBOX 0, Mystr
MyCmd = "sin"
Call MyCmd (0.5) To MyNum
MSGBOX 0, MyNum
'--------------------------------------------------------------------------