|
||||||||||||
|
|
||||||||||||
CallsA call calls a callable object (such as a function or method) with a series of parameters: If the left side of a call expression can be statically bound (to a function or method), then the call will be more effective than in the case of an arbitrary expression. (There might be callbacks involved.) If the binding is static, then named parameters may be used. These can be given in any order as long as the names are correct and all required parameters are filled in. A splice operator (@) is used to split a container into function parameters. This is accomplished by getting enumeration from it and "inserting" each returned value into the parameter list. Special closure call will only take one parameters, an inline function immediately following the callable. This form is provided purely because enclosing parenthesis would look really confusing. However, no other parameters may be given with this form. The return value of a call depends on the type of the left-side expression.
call-expr := identifiercallable "(" parameters ")" call-expr := identifiercallable inline-functionparameter parameters := param ( "," param )* param := [ symbolname "=" | "@" ] expr
|
||||||||||||
|
|
||||||||||||