Method Function.splice_call()
- Method
splice_call
mixed
splice_call(array
args
,function
(:void
)f
,mixed
|void
...extra
)- Description
Calls the given function with the
args
array plus the optional extra arguments as its arguments and returns the result.Most useful in conjunction with map, and particularly in combination with sscanf with
"...%{...%}..."
scan strings (which indeed was what it was invented for in the first place).- Parameter
args
The first arguments the function
f
expects.- Parameter
f
The function to apply the arguments on.
- Parameter
extra
Optional extra arguments to send to
f
.- Returns
Whatever the supplied function
f
returns.- Example
class Product(string name, string version) { string _sprintf() { return sprintf("Product(%s/%s)", name, version); } } map(({ ({ "pike", "7.1.11" }), ({ "whitefish", "0.1" }) }), Function.splice_call, Product); ({ /* 2 elements */ Product(pike/7.1.11), Product(whitefish/0.1) })