Extracted from Pike v7.4 release 341 at 2005-11-21.
pike.ida.liu.se
[Top]
predef::
Function

Method Function.splice_call()


Method splice_call

mixed Function.splice_call(array args, function 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)
   })